2012-10-15 17 views
12

Ich habe einen Code, wo es mehrere Textarea Werte in einer Textdatei speichert. Die Zeilenumbrüche, die ich nach dem Speichern angegeben habe, werden jedoch nicht angezeigt. Es identifiziert nur die Zeilenumbrüche, die manuell in das Textfeld eingefügt werden. Unten ist der Code. Bitte helfen Sie.Javascript | Save Textarea Wert mit Zeilenumbrüchen

<script> 
    var TestVar = new Array(); 
    var i = 0; 
    function save() 
    { 
     TestVar[i] = document.getElementById("text1").value + "\n" + document.getElementById("text2").value; 
     mydoc = document.open(); 
     mydoc.write(TestVar); 
     mydoc.execCommand("saveAs",true,"TicketID.txt"); 
     mydoc.close(); 
    } 
</script> 
</head> 
<body> 
    <form id=formtest> 
     <textarea name="textarea" id="text1"></textarea> 
     <textarea name="textarea" id="text2"></textarea> 
     <input type="button" value="save" onclick="save()"> 
    </form> 
</body> 

+0

Welcher serverseitige Code speichert diese Daten? – MaVRoSCy

+1

Wenn Sie PHP verwenden, sollten Sie die PHP-Funktion "nl2br" in Betracht ziehen, wenn Sie die Daten Ihrer Textbox in der Tabelle speichern. Sie können später Ihre beliebigen "
" -Konzepte in der Tabelle konvertieren mit: str_replace ("
", "\ n", $ textboxValue); –

+0

Hallo. Kein serverseitiges Scripting, da die Datei nur lokal gespeichert wird. –

Antwort

10

Das Problem ergibt sich aus der Tatsache, dass Zeilenumbrüche (\n) sind nicht das gleiche wie HTML <br /> Tags.

Versuchen Sie folgendes:

var text = document.forms[0].txt.value; 
text = text.replace(/\n\r?/g, '<br />'); 

bearbeiten, versuchen Sie dies als js:

var text = document.forms[0].txt.value; 

if (text === true) { text = text.replace(/\n\r?/g, '<br />'); } 

var TestVar = new Array(i); 
var i = 0; 
function save() 
{ 
TestVar[i] = document.getElementById("text1").value + "/n" + document.getElementById("text2").value; 
mydoc = document.open(); 
mydoc.write(TestVar); 
mydoc.execCommand("saveAs",true,"TicketID.txt"); 
mydoc.close(); 
} 
+0

versuchte das und es gibt mir den Fehler unten. Webseite Fehlerdetails Nachricht: 'document.forms.0.txt' ist Null oder kein Objekt Line: 4 Char: 1 Code: 0 –

+0

Seite Fehlerdetails Nachricht: 'document.forms.0.txt' ist null oder kein Objekt Zeile: 4 Zeichen: 1 Code: 0 –

+0

versuche es in ein if, lies meine neue Antwort – lifetimes

14
text = text.replace(/\n\r?/g, '<br />'); 

Text ist Wert von Textarea.

Verwandte Themen