2012-10-15 52 views
12

Ho un codice in cui salva più valori textarea in un file di testo. Tuttavia, non mostra le interruzioni di linea che ho indicato dopo averlo salvato. Identifica solo le interruzioni di riga w/c inserite manualmente nella textarea. Di seguito è riportato il codice. Per favore aiuto.javascript | salva il valore textarea con interruzioni di riga

<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

qual è il codice lato server che salva questi dati? – MaVRoSCy

+1

se sei su PHP, dovresti considerare di usare la funzione PHP "nlbr" quando salvi i dati della tua casella di testo nella tabella. puoi in seguito convertire i tuoi "
" nella tabella con: str_replace ("
", "\ n", $ textboxValue); –

+0

Ciao. Non utilizzare alcuno script sul lato server poiché salverà il file solo localmente. –

risposta

10

Il problema deriva dal fatto che le interruzioni di linea (\n) non sono le stesse in formato HTML <br /> tags.

Prova questo:

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

Modifica, provate questo come i 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

provato e mi dà l'errore di seguito. dettagli dell'errore pagine web messaggio: 'document.forms.0.txt' è null o non un oggetto Linea: 4 Char: 1 Codice: 0 –

+0

dettagli di errore Pagina web Messaggio: 'document.forms.0.txt' è null o no un oggetto Riga: 4 Char: 1 Codice: 0 –

+0

prova a metterlo in un if, leggi la mia nuova risposta – lifetimes

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

testo è il valore da textarea.

Problemi correlati