Newsgroup: it.comp.lang.javascript
Titolo: ancora problemi.

salve gente...
ho creato un programma in js e html, stile questionario che scrive un file
.txt sul c:\ del client (programma su cd).
su questo file sono memorizzate delle textarea e il problema viene quando
una textarea contiene un invio.
il problema degli apici l'ho risolto con questa riga, ma per l'invio non so
come fare!!!
grazie vi allego la riga :
 if (testo[1].length <=0) {s = z + "^^";} else {s = z +
replaceString("\"","'",testo[1]);}
ciao e rigrazie 1000
enrico.

Il Thu, 04 Jan 2001 17:01:06 GMT, Enrico ha scritto.....

Dovrebbe essere sufficiente: mettere String.fromCharCode(13) al posto di \"
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
------------------------------------------------------------------------
               Nessun traguardo è abbastanza lontano.
------------------------------------------------------------------------

 ha scritto nel messaggio
news:MPG.14bed0584...@news.libero.it...



wrote:


 ha scritto nel messaggio
news:3a553860...@news.libero.it...


 ha scritto nel messaggio
news:3a553860...@news.libero.it...



[]
Come gia' detto nelle altre risposte, sulle piattaforme Window (mi
sembra che sia diverso per UNIX e Mac ??) il ritorno a capo e' composto
da un ritorno a capo + un avanzamento riga codici unicode 13+10;
nell'utilizzo delle espressioni regolari si utilizzano dei caratteri
speciali  \r \n che corrispondono ai due codici unicode.
Puoi quindi rintracciare la sequenza e modificarne i valori nella
stringa utilizzando in alternativa le due sintassi (l'esempio modifica i
caratteri a capo con la X e Y):
-----
testo=testo.replace(/\r/g,'X'); testo=testo.replace(/\n/g,'Y');
testo=testo.replace(new RegExp(String.fromCharCode(13),"g"),'X');
........
e per ricostruire la stringa iniziale:
testo=testo.replace(/X/g,'\r'); .............
testo=testo.replace(/X/g,String.fromCharCode(13));..........
------
la g esterna alle barre /.../ significa che devono essere ricercate (e
in questo caso sostituite) tutte le occorrenze dei criteri.
Ho separato le due sostituzioni perche' (mi sembra) Unix e Mac
utilizzano solo l'uno o l'altro dei due caratteri; in questo modo
dovrebbe funzionare con tutte le piattaforme.
Un esempio :
---------------
<script>
function vai(testo){
testo=testo.replace(/\r/g,'X');
testo=testo.replace(/\n/g,'Y');
// testo=testo.replace(new RegExp(String.fromCharCode(13),"g"),'X');
//  testo=testo.replace(new RegExp(String.fromCharCode(10),"g"),'Y');
alert(testo)
testo=testo.replace(/X/g,'\r');
testo=testo.replace(/Y/g,'\n');
//  testo=testo.replace(/X/g,String.fromCharCode(13));
//  testo=testo.replace(/Y/g,String.fromCharCode(10));
document.forms['form1'].textarea2.value=testo;
}
</script>
</HEAD>
<body bgcolor="#FFFFFF">
<FORM action="" method=POST id=form1 name=form1>
<TEXTAREA rows=4 cols=20 id=textarea1 name=textarea1>
</TEXTAREA>
<INPUT type="button" value="Button" id=button1 name=button1
onClick=vai(this.form.textarea1.value)>
<TEXTAREA rows=4 cols=20 id=textarea2 name=textarea2>
</TEXTAREA>
</FORM>
---------------
Con le RegExp puoi fare facilmente qualsiasi manipolazione della
stringa.
Saluti, Paolo

salve gente...


 ha scritto nel messaggio
news:3a57c09f...@news.libero.it...


 ha scritto nel messaggio
news:eyf66.12986$FF1.9...@twister1.tin.it...


come posso risolvere?
Beh, le caselle di testo <input type="text"> infatti non consentono ritorni
a capo...
Solo le aree di testo <textarea> č concesso
PS: al posto di fromCharCode(13) puoi benissimo mettere "/n", e cmq metterei
fromCharCode(10)
Bye
FontN

fromCharCode(10)
Sorry, "\n" :-)

 Solo le aree di testo <textarea> è concesso


sono stato chiaro..????
Se ho capito bene tu hai un file su disco, con dentro del testo. Ad esempio
questo:
----
Questo è un esempio di testo
su più righe da inserire
nella area di testo <TEXTAREA>
----
Questo testo lo vuoi mettere come testo di default di una textarea generata
dinamicamente con document.write( ).
Siamo Ok?
Se è così io farei:
var TestoDaFile
...
TestoDaFile=TestoDaFile.replace(/\n/g, "<br>").replace(/</g,
"&lt;").replace(/>/g, "&gt;")
...
document.write("<TEXTAREA>"+TestoDaFile+"</TEXTAREA>")
Bye
FontN