|
|
 |

|

 |

| Community » Suchanfragen für Scripts/Programmierung |
|
JavaScript Ausgabe in iframe
|
Seitenanfang |
| Guten Abend zusammen. Ich habe ein Problem mit einem Javascript. Ich habe ein Script erstellt welches in einem Frameset arbeitet. In einem Frame wird eine Eingabe getätigt und in einem zweiten Frame erfolgt die Ausgabe. Alles soweit so gut. Nun möchte ich die Ausgabe nur mittels einer Seite mit einem IFrame realisieren. Dies klappt jedoch nicht. Ich habe zwei Effekte : A) Ich kann die Ausgabe in dem gleichen Fenster ausgeben. Jedoch nicht in den IFRAME. B) Es kommt etwas im IFRAME an, verschwindet aber nach 1sec sofort wieder. Welchen Denkfehler habe ich ? Hat jemand einen Idee. Gruß Michael
Datum: 16.11.2005-17:49

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hi, welchen Denkfehler Du machst, kann ich Dir leider nicht sagen, da ich nicht weiß wie Du die Geschichte realisiert hast. Die Technik ist jedenfalls die Selbe. Egal, ob es sich um einen <frame> oder <iframe> handelt. Es drängt sich mir aber der Gedanke auf, dass die Datei, die in den iframe geladen wird, ein Refresh hat, das auf eine Sekunde eingestellt ist. -uw
Datum: 17.11.2005-03:46

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hallo TbHoCne, ich versuche mal das Script kurz vorzustellen : ... // Dies steht im Script offlinesearch.js ... if (top.frames.length <= 0 ) {// Noframe var DOCUMENT = document; } else {// Frame var DOCUMENT = parent.frames['xframe'].document; } ... function print_header(font_str,text_color,bg_color,link_color,alink_color,vlink_color,hlink_color,blockquote) { DOCUMENT.open(); DOCUMENT.target="xframe"; DOCUMENT.writeln("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>"); DOCUMENT.writeln("<head>"); DOCUMENT.writeln("<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>"); DOCUMENT.writeln("<title>search</title>"); DOCUMENT.writeln("<link rel='stylesheet' type='text/css' href='format.css'></link>"); DOCUMENT.writeln("</head>"); DOCUMENT.writeln("<body text="+text_color+" bgcolor="+bg_color+" link="+link_color+" alink="+alink_color+" vlink="+vlink_color+" hlink="+hlink_color+">"); DOCUMENT.writeln(font_str); DOCUMENT.writeln("<a name='top'></a><br>"); if ( blockquote == "1" ) DOCUMENT.writeln("<blockquote><blockquote>"); } function print_end(blockquote) { if ( blockquote == "1" ) DOCUMENT.writeln("</blockquote></blockquote>"); DOCUMENT.writeln("<a name='bottom'></a>"); DOCUMENT.writeln("</font>"); DOCUMENT.writeln("</body>"); DOCUMENT.writeln("</html>"); DOCUMENT.close(); } function offline_search(db1,db2,db3,str,soundex,exact,ignore,font_str,text,bgcolor,link,alink,vlink,hlink) {var count=0; var key=" "; var soundex_str=" "; print_header(font_str,text,bgcolor,link,alink,vlink,hlink,"1"); DOCUMENT.writeln(start_text+"<b>"+str+"</b>"); ... hier kommt dann eine Ausgabe ... print_end("1"); } // Nun kommt die Datei mit dem iframe ... <iframe name='xframe' width='98%' height='300'></iframe> <span> <script language='JavaScript' type='text/javascript' src='./offlinesearch.js'></script> <form name='search_form' action='' > <input type='Checkbox' name='db1' value='b' checked='checked'>B... <input type='Checkbox' name='db2' value='z' checked='checked'>Z... <input type='Checkbox' name='db3' value='c'>A... <input type='Checkbox' name='soundex' value='s'>S... <input type='text' name='search_string' size=20 stlye='width:180px; height:9px' width=200> <input type='submit' value='Suche' accesskey='s' align='left' onClick="offline_search(this.form.db1.checked,this.form.db2.checked,this.form.db3.checked,this.form.search_string.value,'0','0','0','','#000000','#FFFFDD','#8B765F','#800010','#B7B380','#FF0000')"> </form> </span> ...
Datum: 17.11.2005-08:55

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hi, eine Sache ist mir aufgefallen, bin mir aber nicht sicher, ob das einen Browser wirklich aus der Ruhe bringt.
parent.frames['xframe'].document anstatt
parent.frames[1].document http://de.selfhtml.org/javascript/objekte/frames.htm#allgemeinesUnd, da das Skript in dem Dokument aufgerufen wird, in dem auch der iFrame definiert ist, klappt das mit dem parent nicht, da es ja gar kein Elternfenster gibt. Ich denke das man hier top nehmen sollte. Außerdem glaube ich, dass Du nach der Zuweisung für DOCUMENT kein Target mehr angeben brauchst. Was sagt denn der Skriptdebugger? -uw
Datum: 17.11.2005-11:59

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hallo TbHoCne, leider ändert sich die Anzeige weder bei top statt parent noch bei der Verwendung der Nummer statt des Namen. Es wird kein Fehler angezeigt. Die Ausgabe erfolgt sogar direkt in den iframe für ca. 1 Sekunde. Dann wird die Ausgabe gelöscht un ein leerer iframe angezeigt. Bei der Verwendung eines Frameset mit mehr als einem Frame erfolgt die richtige Anzeige im richtigen Fenster ohne gelöscht zu werden. Gruss Michael
Datum: 17.11.2005-15:22

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hi, nun habe ich das Gefühl, dass man über Deine Methode nicht an das Kind-document im iframe herankommt. Ich geh' der Sache mal auf den Grund, das juckt mich jetzt nämlich auch. Ich melde mich wieder. -uw
Datum: 18.11.2005-10:09

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Ups, ging doch schneller als ich dachte. (1) Headerdaten weglassen. Allein das Definieren des iframe erzeugt schon ein komplettes Grundgerüst einer HTML Datei, samt title und body Tags. Solltest Dir mal den Quelltext des iframe anschauen. (2) Beim Ansprechen des iframe top oder parent weglassen da es ja ein Kindelement des aktuellen documents ist. Man könnte Anstelle dessen auch this verwenden.
var if_d = frames[0].document; if_d.writeln('<h1>First text in iframe</h1>');
So müsste es eigentlich funktionieren, das hat es jedenfalls bei mir. Ich mach aus meinem Test ein kleines Tutorial, das man ab ca. 15:00 Uhr unter dem folgenden Link wird abrufen können. http://warp-factor.homelinux.net/tutorials/js_iframe_write.html So long. -uw
Datum: 18.11.2005-11:01

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hallo TbHoCne, toll dein Beispiel geht auch bei mir. Auch eingebunden in mein anderes Script geht dein Beispiel. Leider geht meines jedoch immer noch nicht obwohl der Aufbau eigentlich gleich ist. Ich kann es mir nicht erklären. Kann ich dir mein Script mal als ZIP mailen ? Gruss Michael
Datum: 19.11.2005-12:01

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Hi, klar, kannst Du gerne machen. uw-walter@mainzkom.de -uw
Datum: 19.11.2005-12:22

|
re: JavaScript Ausgabe in iframe
|
Seitenanfang |
| Beantwortet per eMail.
Datum: 19.11.2005-13:36

|
|

|

|

|
 |

|

|
|