Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Javascript Aufruf in einer mit document.write erzeugsten HTML Seite

Frage Entwicklung JavaScript

Mitglied: Claude

Claude (Level 1) - Jetzt verbinden

21.03.2008, aktualisiert 31.05.2010, 10766 Aufrufe, 1 Kommentar

document.write erzeugt eine leere Seite, wenn solch eine Zeile erzeugt wird: document.write('<script type="text/javascript" src="zbroklink.js"></script>');

Hallo,

Ich bin erst anfänger mit Javascript. Habe ein kleines Problem.

In meinem Verzeichnis/Homepage habe ich einige hundert HTML Seiten, die jede eine kleine Javascript-Suchfunktion haben (selber zusammengebastelt).

Um die Ergebnisse anzuzeigen, erzeuge ich mit document.write eine neue Seite (bzw überschreibe die vorhandene), die nur die Teile enthält, die der Suche entsprechen. Bis da kein Problem (ausser das es nur mit IE klappt, aber ich kenne die Ursache zu diesem Problem).

Jetzt kommt's:
In der Ergebnis-Seite brauche ich Verweise auf externe .js Dateien.
Beispiel:
01.
document.write('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">'); 
02.
document.write('<HTML><HEAD>'); 
03.
document.write('<TITLE>Claude\'s PC-Tipps DE, Suchergebnis</TITLE>'); 
04.
document.write('<link rel=stylesheet type="text/css" href="xformate.css">'); 
05.
document.write('<script type="text/javascript" src="zbroklink.js"></script>'); 
06.
document.write('<script type="text/javascript" src="zcpct.js"></script>'); 
07.
document.write('<script type="text/javascript" src="dhtml.js"></script>'); 
08.
document.write('</HEAD>'); 
09.
document.write('<BODY>'); 
10.
document.write("<a href=\"javascript:history.back()\">zur&uuml;ck zur Liste<\/a><br><p><s>" + meldung); 
11.
usw.
Dann mit einer Schleife werden die Ergebnisse angezeigt.
Beispiel:
01.
 if(ergzw == suchwortanz) { //wenn ergzw = anzahl der Suchwoerter (bei UND) ... alle wörter gefunden 
02.
     document.write(inhalthtml[i]); 
03.
usw.
Das Problem ist nun, das wenn ich dies auf meinem lokalen Rechner ausführe alles geht. Sobald ich es auf dem Webspace habe, wird eine leere Seite angezeit. Erst wenn ich die 3 Zeilen
01.
document.write('<script type="text/javascript" src="zbroklink.js"></script>'); 
02.
document.write('<script type="text/javascript" src="zcpct.js"></script>'); 
03.
document.write('<script type="text/javascript" src="dhtml.js"></script>');
entferne, dann geht es wieder.

Wenn ich den QuellCode der leere Seite anschaue, hört es direkt nach diesen 3 Zeilen auf. Der Rest wird nicht mehr erzeugt.
Habe auch schon probiert den Tag </script> in <\/script> zu ändern. Ohne Erfolg.

Oder muss ich die 3 Zeilen mit DOM hineinfügen, wenn das Document fertig geschrieben ist?

Zu wissen ist auch, das die gleichen 3 Zeilen auch in der ursprüngliche HTML Seite verweist sind.

Wer sich das anschauen möchte: http://www.cpctipps.de
Die Homepage kommt ganz ohne CGI und Datenbank aus.
Auf der Homepage habe ich jetzt die 3 Zeilen entfernt, damit das Suchergebnis angezeigt wird.
Nur die Links 'Tote Links melden' und 'Tipp per eMail weiterleiten' funktionieren nach der Suche nicht.

Hat jemand eine Idee?? ...bestimmt....
Vielen Dank
Gruss
Claude
Mitglied: Claude
25.03.2008 um 18:49 Uhr
LÖSUNG:
Beim Erzeugen einer neuen Seite mit document.write, müssen die </ maskiert werden, sonst klappt das verweisen nicht, und die neue Seite wird nicht erstellt.
Folgendes Beispiel funktioniert nicht:
01.
document.write('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">'); 
02.
document.write('<HTML><HEAD>'); 
03.
document.write('<TITLE>Claude\'s PC-Tipps DE, Suchergebnis</TITLE>'); 
04.
document.write('<link rel=stylesheet type="text/css" href="xformate.css">'); 
05.
document.write('<script type="text/javascript" src="zbroklink.js"></script>'); 
06.
document.write('<script type="text/javascript" src="zcpct.js"></script>'); 
07.
document.write('<script type="text/javascript" src="dhtml.js"></script>'); 
08.
document.write('</HEAD>'); 
Wenn das maskieren nicht durchgeführt werden kann (weil ZB die Daten mit OuterHtml ausgelesen werden, dann bietet sich diese Lösung an:
Die Verweise können wie folgt am Ende der Funktion nachgeladen werden:
01.
//HIER WERDEN DIE JS-DATEIEN IM HEAD NACHGELADEN  
02.
var newScriptZeile1 = document.createElement("script"); 
03.
newScriptZeile1.type="text/javascript"; 
04.
newScriptZeile1.src="dhtml.js"; 
05.
document.getElementsByTagName("HEAD")[0].appendChild(newScriptZeile1); 
06.
var newScriptZeile2 = document.createElement("script"); 
07.
newScriptZeile2.type="text/javascript"; 
08.
newScriptZeile2.src="zcpct.js"; 
09.
document.getElementsByTagName("HEAD")[0].appendChild(newScriptZeile2); 
10.
var newScriptZeile3 = document.createElement("script"); 
11.
newScriptZeile3.type="text/javascript"; 
12.
newScriptZeile3.src="zbroklink.js"; 
13.
document.getElementsByTagName("HEAD")[0].appendChild(newScriptZeile3); 
mfG
claude
Bitte warten ..
Neuester Wissensbeitrag
Router & Routing

192.168er Adresse im öffentlichen Netz

(1)

Erfahrungsbericht von visco-c zum Thema Router & Routing ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (27)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (21)

Frage von Driphex zum Thema Exchange Server ...

Hyper-V
HYPER V und USB (16)

Frage von Hendrik2586 zum Thema Hyper-V ...