online 1
gast (50)

/ Forum / Webseiten/HTML

Webseiten/HTMLWebseiten/HTML

Fragevon johann1976 vom 25.01.2022, 14:10 Options

Guten Tag. Ich möchte eine Textdatei in einem Iframe einer HTML-Datei mithilfe Javascript mit einer bestimmten Formatierung ausgeben.

Guten Tag. Ich möchte eine Textdatei in einem Iframe einer HTML-Datei mithilfe Javascript mit einer bestimmten Formatierung ausgeben. Ähnlich wie es hier http://www.supportnet.de/fresh/2007/4/id1532781.asp schon einmal beschrieben ist. Sprich bei Aufrufen der HTML-Seite soll automatisch die Textdatei eingelesen und ausgegeben werden. Nun möchte ich aber das in der Textdatei zum Beispiel steht <Zeilenumbruch> und das das automatisch als <br> interpretiert wird und somit der Zeielnumbruch erfolgt. Es soll jemand ganz ohne HTML-Kenntnisse leicht den Text ändern können. Ich wäre für Hilfe wirklich dankbar.


Antwort schreiben

Antwort 1 von johann1976 vom 25.01.2022, 16:50 Options

Hallo.
So funktioniert es im Mozilla Firefox.


<html>
<head>
<title>AJAX</title>
<script type="text/javascript">
function nachladen() {
var http = null;
if (window.XMLHttpRequest) {
http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
http = new ActiveXObject("Microsoft.XMLHTTP");
}
if (http != null) {
http.open("GET", "textdatei.txt", true);
http.onreadystatechange = ausgeben;
http.send(null);
}

function ausgeben() {
if (http.readyState == 4) {

var dateiinhalt=http.responseText;
dateiinhalt = dateiinhalt.replace(/<absatz_text>/g, '<b><font size="+2">');
dateiinhalt = dateiinhalt.replace(/<absatz_endet>/g, '</font></b>');

dateiinhalt = dateiinhalt.replace(/ae/g, '&auml;');
dateiinhalt = dateiinhalt.replace(/Ae/g, '&Auml;');
dateiinhalt = dateiinhalt.replace(/oe/g, '&ouml;');
dateiinhalt = dateiinhalt.replace(/Oe/g, '&Ouml;');
dateiinhalt = dateiinhalt.replace(/ue/g, '&uuml;');
dateiinhalt = dateiinhalt.replace(/Ue/g, '&Uuml;');
dateiinhalt = dateiinhalt.replace(/ss/g, '&szlig;');

document.getElementById("Ausgabe").innerHTML = dateiinhalt;

}
}
}
window.onload=nachladen;
//--></script>
</head>
<body bgcolor=red>
HTML vom Server:
<div id="Ausgabe"></div>
</body>
</html>

Leider nicht im Internet Explorer. Weiß jemand Rat? Ich krieg schon kahle Stellen vom Haare raufen, bitte helft mir.

Antwort 2 von gast42 vom 25.01.2022, 18:02 Options

http ist lokale Variable in nachladen, in ausgeben daher unbekannt!

Antwort 3 von gast42 vom 25.01.2022, 19:47 Options

dein Code umgeschrieben auf anonyme Funktionen und Closures (umgehen das lokale-Variable-Problem):

<html>
<head>
<title>AJAX</title>
<script type="text/javascript">
window.onload=function () {
 var http = null;
 if (window.XMLHttpRequest) {
  http = new XMLHttpRequest();
 } else if (window.ActiveXObject) {
  http = new ActiveXObject("Microsoft.XMLHTTP");
 }
 if (http != null) {
  http.open("GET", "textdatei.txt", true);
  http.onreadystatechange = function(){
   if (http.readyState == 4) {
    var dateiinhalt=http.responseText;
    ... (viel unnötiger Code, zB. Umlautmaskierung!)
    document.getElementById("Ausgabe").innerHTML=dateiinhalt;
   }
  http.send(null);
  }
 }
}
</script>
</head>
<body style="background-color:red">
HTML vom Server:
<div id="Ausgabe"> </div>
</body>
</html>


Außerdem die Kommentar-Ende-Deklaration im Script gelöscht - völlig überflüssig und zudem unvollständig.

Tipp: Firefox hat eine Fehlerkonsole (Menü Extras)

Antwort 4 von johann1976 vom 26.01.2022, 00:07 Options

Erstmal vielen Dank für die zwei schnellen Antworten ! Leider krieg ich das nicht zum laufen.

<html>
<head>
<title>AJAX</title>
<script type="text/javascript">
window.onload=function () {
var http = null;
if (window.XMLHttpRequest) {
http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
http = new ActiveXObject("Microsoft.XMLHTTP");
}
if (http != null) {
http.open("GET", "textdatei.txt", true);
http.onreadystatechange = function(){
if (http.readyState == 4) {
var dateiinhalt=http.responseText;

document.getElementById("Ausgabe").innerHTML=dateiinhalt;
}
http.send(null);
}
}
}
</script>
</head>
<body bgcolor=red>
HTML vom Server:
<div id="Ausgabe"> </div>
</body>
</html>

Fehlt da noch was?

Die Umlautmaskierung brauch ich net wirklich. Stimmt.
Aber ich möchte in der Textdatei zum Beispiel schreiben <zeilenumbruch> und die Funktion soll automatisch das als <br> ausgeben, sprich an der Stelle einen Zeilenumbruch einfügen. Genauso mit der Formatierung, Schriftart und so.
Danke für die Mühe.

Antwort 5 von gast42 vom 26.01.2022, 06:18 Options

Fehlermeldungen?

Antwort 6 von johann1976 vom 26.01.2022, 09:11 Options

Der IE8 bringt

Details zum Fehler auf der Webseite

Benutzer-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; FDM; .NET CLR 1.0.3705; .NET CLR 1.1.4322)
Zeitstempel: Tue, 26 Jan 2010 08:03:26 UTC


Meldung: Zugriff verweigert

Zeile: 13
Zeichen: 3
Code: 0
URI: file:///Y:/Eigene%20Dateien/Aktuelle%20Projekte/ZIS%201472009/ZIS_neue_Webseite/GoLive/test.html

im Mozilla steht nichts verwertbares. Nur eine Fehlermeldung über Google. Zeigt aber gar nichts an.
Was bedeutet lokale Variable?

Antwort 7 von gast42 vom 26.01.2022, 19:49 Options

Zitat:
im Mozilla steht nichts verwertbares
überlass die Beurteilung besser anderen. Und betätige den Button "Löschen" vor dem Reload deiner Seite.

Die Fehlermeldungen des Internet-Explorer sind grundsätzlich nicht verwertbar!

Ähnliche Themen

JavaScript aktivieren
Mickey  06.05.2008 - 2169 Hits -

PHP-Skript soll HTML-Datei erstellen
T-Boy00  22.09.2008 - 21 Hits - 10 Antworten

mit JavaScript DOM-Element löschen
katy  14.12.2008 - 3042 Hits -

PDF-Datei wird im iframe unter htaccess nicht angezeigt
Manni55  20.06.2009 - 450 Hits - 5 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026