Ergebnis 1 bis 14 von 14
  1. #1
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    Ausgabe von HTML Elementen

    Hallo Forum,

    ich übergebe mittels

    HTML-Code:
    window.parent.document.getElementById("linking_data_div").firstChild.nodeValue = '<div>TEST'+kontakt_id+'<\/div>';
    erfolgreich Daten aus einem iFrame in ein div in einen übergeordneten Frame. Dort sehe ich dann auch das Ergebnis ... nur zu viel, denn <div></div> werden ebenfalls als Klartext ausgegeben. Leider kann ich nicht per Quelltext entnehmen, was da wirklich ausgegeben wird. Hat jemand nen Tip?

    DANKE!!

  2. #2
    Ava-chan ist offline Tripel-As
    registriert
    24-03-2009
    Beiträge
    192

    AW: Ausgabe von HTML Elementen

    http://de.selfhtml.org/javascript/ob...htm#node_value

    IMO hast du schon mal versucht ihm zu sagen das das was er da bekommt HTML ist ... also ca. so

    window.parent.document.getElementById("linking_data_div").firstChild.innerHTML = '<div>TEST'+kontakt_id+'<\/div>';

    Da ich den rest gerade nicht zum testen da habe ist der Code ungetestet und ich weiß nicht ob der Knoten innerHTML unterstüzt.

    MfG,
    Ava-chan

  3. #3
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    AW: Ausgabe von HTML Elementen

    nein, leider bring das nur ne Fehlermeldung. Denke, auch nach weiterem Googlen, dass es nur mit createElement. Jetzt muss ich nur noch rausbekommen, wie ich createElement beibringe, wo es das div (also innerhalb des Wrapper-divs) erzeugen soll und wie ich den Eintrag auch wieder loswerde.

  4. #4
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Ausgabe von HTML Elementen

    nur innerHTML reicht
    firstChild ist ein Textknoten, der hat kein HTML Code

  5. #5
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    AW: Ausgabe von HTML Elementen

    stimmt funktioniert. Vielen DANK!

  6. #6
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    doch noch ein Problem

    Ich erzeuge nun wunderbar (dank eurer Hilfe) dieses dynamisch DIV und kann es auch dynamisch wieder entfernen:

    Code:
    window.parent.document.getElementById("linking_data_div").innerHTML=
    '<div class="beschriftung" style="width:300px;" id="kontaktdiv_'+kontakt_id+'"><div style="width:11px; height:11px; float:left;" class="hgbutt-delete" onclick="p11_delcontactrow('+kontakt_id+')"><input name="kontakt_id[]" type="hidden" id="kontakt_id[]" value="'+kontakt_id+'">-<\/div><div style="width:280px; float:left;" class="beschriftung">&nbsp;KONTAKT:&nbsp;'+k_text+'<\/div><\/div>';
    ... das div enthält nun ein Formularelement:

    Code:
    <input name="kontakt_id[]" type="hidden" id="kontakt_id[]" value="'+kontakt_id+'">
    dieses wird im IE8 berücksichtigt aber nicht in FIREFOX und CHROME.
    .. dh. dass nach dem Submit ein count($_POST[kontakt_id]) 0 ergibt.

    Interessanterweise: Gebe ich das DIV nicht als dynamisches Element sondern "normal" ein ... funktioniert auch im FIREFOX und im CHROME die Übergabe als Array.

    Woran kann es liegen, dass die dynamische Variante im FIREFOX und im CHROME nicht wollen?

    Danke für weitere Stützen ...

  7. #7
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Ausgabe von HTML Elementen

    Vielleicht an der falschen Stelle eingefügt? Normlaerweise hat eher der IE Probleme mit dynamischen Formularelementen

  8. #8
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    AW: Ausgabe von HTML Elementen

    ... nein, ich denke nicht. Befindet sich innerhalb des div (erster Codabschnitt) ... ich vermute schmerzlich dass es mit Formularelementen nur mit createelement funktionieren wird.

  9. #9
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.695

    AW: Ausgabe von HTML Elementen

    Natürlich funktioniert das auch im FF - du bindest da wahrscheinlich was falsch ein.
    Hast du mal etwas mehr Code oder einen Testlink(besser)?

  10. #10
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    AW: Ausgabe von HTML Elementen

    Testlink wird schwer, weil in'nem Intranet aber ich versuche mal die relevanten Codeabschnitte rauszuschreiben:

    Wie ganz am Anfang beschrieben besteht das Ganze aus einer Seite, in der sich ein IFRAME befindet ... aus dem (IFRAME) heraus wir im PARENTFRAME das DIV in einem WRAPPER-DIV erzeugt. Das FORM befindet sich im PARENTFRAME.

    Der Aufruf aus dem IFRAME und dessen FUNKTION:

    Code:
    onClick="p11_addcontactrow(<? echo $array[id_kunde];?>,'<? echo fixwritedata($js_kommentartext);?>')"
    
    function p11_addcontactrow(kontakt_id,k_text) 
    {  	
    	 window.parent.document.getElementById("linking_data_div").innerHTML =  window.parent.document.getElementById("linking_data_div").innerHTML + '<div class="beschriftung" style="width:300px;" id="kontaktdiv_'+kontakt_id+'"><div style="width:11px; height:11px; float:left;" class="hgbutt-delete" onclick="p11_delcontactrow('+kontakt_id+')"><input name="kontakt_id[]" type="hidden" id="kontakt_id[]" value="'+kontakt_id+'">-<\/div><div style="width:280px; float:left;" class="beschriftung">&nbsp;KONTAKT:&nbsp;'+k_text+kontakt_id+'<\/div><\/div>';
    }
    Der Wrapper, der das DIV aufnimmt im übergeordneten Frame (nur ein ganz kleiner Ausschnitt, von dem ich denke, dass er relevant ist):

    Code:
    <form action="termin_data.php" method="post" name="terminform" id="terminform">
    
    <div id="linking_data_div" style="width:300px; height:100px; overflow-y:auto; overflow-x:hidden;">
    
    </div>
    
    </form>
    ... und so sieht ein Beisspiel aus, dass die Daten nach dem Submit ordnungsgemäß in alle Browsern weitergibt.

    Code:
    <div class="beschriftung" style="width:300px;" id="kontaktdiv_4463">
          <div style="width:11px; height:11px; float:left;" class="hgbutt-delete" onclick="p11_delcontactrow('4463')"><input name="kontakt_id[]" type="hidden" id="kontakt_id[]" value="4463">-</div>
          <div style="width:280px; float:left;" class="beschriftung">&nbsp;KONTAKT:&nbsp;/Glagla</div>
          </div>
    in termin_data.php fange ich kontakt_id mit count($kontakt_id) ab ... und der ist bei der dynamischen Variante im FF und Chrome immer 0.

    Ich hoffe, das bring etwas mehr Licht in Dunkel ...

  11. #11
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.695

    AW: Ausgabe von HTML Elementen

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
      "http://www.w3.org/TR/html4/loose.dtd">
    
    <html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>Fenstertitel</title>
    <script type="text/javascript" src="./Plugin/nuetzlich.js"></script>
    <script type="text/javascript">
    document.onclick = function(){
    	document.getElementById("insert").innerHTML = '<div class="beschriftung" style="width:300px;" id="kontaktdiv_4463">     <div style="width:11px; height:11px; float:left;" class="hgbutt-delete" onclick="p11_delcontactrow(\'4463\')"><input name="kontakt_id[]" type="hidden" id="kontakt_id[]" value="4463">-<\/div>      <div style="width:280px; float:left;" class="beschriftung">&nbsp;KONTAKT:&nbsp;/Glagla<\/div>      <\/div>';
    }
    </script>
    </head>
    <body>
    <form method="GET" action="">
    	<div id="insert">
    	</div>
    	<input type="submit">
    </form>
    </body>
    </html>
    funktioniert wunderbar im FF

  12. #12
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    AW: Ausgabe von HTML Elementen

    keine Ahnung, woran das liegen kann. Habe es jetzt mit:

    Code:
    if (document.createElement) {
    	input = document.createElement('input');
    	input.type = 'hidden';
    	input.name = 'kontakt_id[]';
    	input.id = 'hiddenkontaktid_'+kontakt_id;
    	input.value = input.defaultValue = kontakt_id;
    	window.parent.document.terminform.appendChild(input);
    	}
    gelöst und da haut es hin.

    Vielen Dank für die Bemühungen!!!

  13. #13
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.695

    AW: Ausgabe von HTML Elementen

    Das wundert mich jetzt - das sollte eigentlich nicht im IE funktionieren: document.createElement('input'); -> window.parent.document.createElement('input');

  14. #14
    emmis ist offline Mitglied
    registriert
    22-07-2009
    Beiträge
    47

    AW: Ausgabe von HTML Elementen

    hast recht!!!

Ähnliche Themen

  1. Antworten: 11
    Letzter Beitrag: 16-02-2008, 13:17
  2. Ausgabe in div nicht in Formular feld
    Von Lordi im Forum JavaScript
    Antworten: 6
    Letzter Beitrag: 18-09-2007, 19:16
  3. "Pizza Online Bestelldienst"
    Von wilfried.pz im Forum JavaScript
    Antworten: 4
    Letzter Beitrag: 14-07-2007, 01:10
  4. Ordner ausgabe in HTML datei
    Von vanish im Forum Serverseitige Programmierung
    Antworten: 6
    Letzter Beitrag: 27-01-2006, 12:29
  5. ausgabe aus .txt in html
    Von vanish im Forum JavaScript
    Antworten: 9
    Letzter Beitrag: 18-01-2006, 10:10

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •