Un form di input e uno di output con funzione javascript

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Salve ho creato uno script per sostituire tutti i caratteri accentati e speciali di una stringa in caratteri codificati
( l'ho cercata in rete ma niente... )

ed eccola qua :
HTML:
<html>

<head>


<script language="Javascript">

var miaStringa = new String("stringa di prova");

function rimpiazza() { 
 
miaStringa = miaStringa.replace(/'/g, "& acute");
miaStringa = miaStringa.replace(/¡/g, "& iexcl");
miaStringa = miaStringa.replace(/¢/g, "& cent");
miaStringa = miaStringa.replace(/£/g, "& pound");
miaStringa = miaStringa.replace(/¤/g, "& curren");
miaStringa = miaStringa.replace(/¥/g, "& yen");
miaStringa = miaStringa.replace(/¦/g, "& brvbar");
miaStringa = miaStringa.replace(/§/g, "& sect");
miaStringa = miaStringa.replace(/¨/g, "& uml");
miaStringa = miaStringa.replace(/©/g, "& copy");
miaStringa = miaStringa.replace(/ª/g, "& ordf");
miaStringa = miaStringa.replace(/«/g, "& laquo");
miaStringa = miaStringa.replace(/¬/g, "& not");
miaStringa = miaStringa.replace(/¬/g, "& shy");
miaStringa = miaStringa.replace(/®/g, "& reg");
miaStringa = miaStringa.replace(/¯/g, "& macr");
miaStringa = miaStringa.replace(/°/g, "& deg");
miaStringa = miaStringa.replace(/±/g, "& plusmn");
miaStringa = miaStringa.replace(/²/g, "& sup2");
miaStringa = miaStringa.replace(/³/g, "& sup3");
miaStringa = miaStringa.replace(/´/g, "& acute");
miaStringa = miaStringa.replace(/µ/g, "& micro");
miaStringa = miaStringa.replace(/¶/g, "& para");
miaStringa = miaStringa.replace(/•/g, "& middot");
miaStringa = miaStringa.replace(/¸/g, "& cedil");
miaStringa = miaStringa.replace(/¹/g, "& sup1");
miaStringa = miaStringa.replace(/º/g, "& ordm");
miaStringa = miaStringa.replace(/»/g, "& raquo");
miaStringa = miaStringa.replace(/¼/g, "& frac14");
miaStringa = miaStringa.replace(/½/g, "& frac12");
miaStringa = miaStringa.replace(/¾/g, "& frac34");
miaStringa = miaStringa.replace(/¿/g, "& iquest");
miaStringa = miaStringa.replace(/À/g, "& Agrave");
miaStringa = miaStringa.replace(/Á/g, "& Aacute");
miaStringa = miaStringa.replace(/Â/g, "& Acirc");
miaStringa = miaStringa.replace(/Ã/g, "& Atilde");
miaStringa = miaStringa.replace(/Ä/g, "& Auml");
miaStringa = miaStringa.replace(/Å/g, "& Aring");
miaStringa = miaStringa.replace(/Æ/g, "& AElig");
miaStringa = miaStringa.replace(/Ç/g, "& Ccedil");
miaStringa = miaStringa.replace(/È/g, "& Egrave");
miaStringa = miaStringa.replace(/É/g, "& Eacute");
miaStringa = miaStringa.replace(/Ê/g, "& Ecirc");
miaStringa = miaStringa.replace(/Ë/g, "& Euml");
miaStringa = miaStringa.replace(/Ì/g, "& Igrave");
miaStringa = miaStringa.replace(/Í/g, "& Iacute");
miaStringa = miaStringa.replace(/Î/g, "& Icirc");
miaStringa = miaStringa.replace(/Ï/g, "& Iuml");
miaStringa = miaStringa.replace(/Ð/g, "& ETH");
miaStringa = miaStringa.replace(/Ñ/g, "& Ntilde");
miaStringa = miaStringa.replace(/Ò/g, "& Ograve");
miaStringa = miaStringa.replace(/Ó/g, "& Oacute");
miaStringa = miaStringa.replace(/Ô/g, "& Ocirc");
miaStringa = miaStringa.replace(/Õ/g, "& Otilde");
miaStringa = miaStringa.replace(/Ö/g, "& Ouml");
miaStringa = miaStringa.replace(/×/g, "& times");
miaStringa = miaStringa.replace(/Ø/g, "& Oslash");
miaStringa = miaStringa.replace(/Ù/g, "& Ugrave");
miaStringa = miaStringa.replace(/Ú/g, "& Uacute");
miaStringa = miaStringa.replace(/Û/g, "& Ucirc");
miaStringa = miaStringa.replace(/Ü/g, "& Uuml");
miaStringa = miaStringa.replace(/Ý/g, "& Yacute");
miaStringa = miaStringa.replace(/Þ/g, "& THORN");
miaStringa = miaStringa.replace(/ß/g, "& szlig");
miaStringa = miaStringa.replace(/à/g, "& agrave");
miaStringa = miaStringa.replace(/á/g, "& aacute");
miaStringa = miaStringa.replace(/â/g, "& acirc");
miaStringa = miaStringa.replace(/ã/g, "& atilde");
miaStringa = miaStringa.replace(/ä/g, "& auml");
miaStringa = miaStringa.replace(/å/g, "& aring");
miaStringa = miaStringa.replace(/æ/g, "& aelig");
miaStringa = miaStringa.replace(/ç/g, "& ccedil");
miaStringa = miaStringa.replace(/è/g, "& egrave");
miaStringa = miaStringa.replace(/é/g, "& eacute");
miaStringa = miaStringa.replace(/ê/g, "& ecirc");
miaStringa = miaStringa.replace(/ë/g, "& euml");
miaStringa = miaStringa.replace(/ì/g, "& igrave");
miaStringa = miaStringa.replace(/í/g, "& iacute");
miaStringa = miaStringa.replace(/î/g, "& icirc");
miaStringa = miaStringa.replace(/ï/g, "& iuml");
miaStringa = miaStringa.replace(/ð/g, "& eth");
miaStringa = miaStringa.replace(/ñ/g, "& ntilde");
miaStringa = miaStringa.replace(/ò/g, "& ograve");
miaStringa = miaStringa.replace(/ó/g, "& oacute");
miaStringa = miaStringa.replace(/ô/g, "& ocirc");
miaStringa = miaStringa.replace(/õ/g, "& otilde");
miaStringa = miaStringa.replace(/ö/g, "& ouml");
miaStringa = miaStringa.replace(/÷/g, "& divide");
miaStringa = miaStringa.replace(/ø/g, "& oslash");
miaStringa = miaStringa.replace(/ù/g, "& ugrave");
miaStringa = miaStringa.replace(/ú/g, "& uacute");
miaStringa = miaStringa.replace(/û/g, "& ucirc");
miaStringa = miaStringa.replace(/ü/g, "& uuml");
miaStringa = miaStringa.replace(/ý/g, "& yacute");
miaStringa = miaStringa.replace(/þ/g, "& thorn");
miaStringa = miaStringa.replace(/ÿ/g, "& yuml");   
	
document.write(miaStringa);

}

rimpiazza()
	
</script>

</head>

<body >


</body>

</html>

Scusate la lunghezza ma i caratteri sono parecchi.
Adesso vorrei con il vostro aiuto se possibile creare un form di entrata della stringa da analizzare e poi dopo un button mi comparisse il testo formattato in un form sottostante.
Mi aiutate per cortesia :)
Grazie anticipato.
 
Ciao,

Codice:
<script language="Javascript">

function rimpiazza() { 
var miaStringa = document.mioform.testo.value;

miaStringa = miaStringa.replace......i tuoi replace

document.mioform.risultato.value=miaStringa;
}
</script>

Form

Codice:
<form name="mioform">
<textarea name="testo" cols="35" rows="15"></textarea><br><br>
<textarea name="risultato" cols="35" rows="15"></textarea><br><br>
<input type="button" value="Clicca" onclick="rimpiazza()">
</form>

chiudi i caratteri con ; &acute;

Valeria.
 
Ciao Vale ringraziandoti purtroppo devo dire che non funziona :(

ti riposto lo script cosi puoi fare prove anche te se ti va ...

HTML:
<html>

<head>


<script language="Javascript">

var miaStringa = document.mioform.testo.value;

function rimpiazza() { 
 
miaStringa = miaStringa.replace(/'/g,; "& acute";);
miaStringa = miaStringa.replace(/¡/g,; "& iexcl";);
miaStringa = miaStringa.replace(/¢/g,; "& cent";);
miaStringa = miaStringa.replace(/£/g,; "& pound";);
miaStringa = miaStringa.replace(/¤/g,; "& curren";);
miaStringa = miaStringa.replace(/¥/g,; "& yen";);
miaStringa = miaStringa.replace(/¦/g,; "& brvbar";);
miaStringa = miaStringa.replace(/§/g,; "& sect";);
miaStringa = miaStringa.replace(/¨/g,; "& uml";);
miaStringa = miaStringa.replace(/©/g,; "& copy";);
miaStringa = miaStringa.replace(/ª/g,; "& ordf";);
miaStringa = miaStringa.replace(/«/g,; "& laquo";);
miaStringa = miaStringa.replace(/¬/g,; "& not";);
miaStringa = miaStringa.replace(/¬/g,; "& shy";);
miaStringa = miaStringa.replace(/®/g,; "& reg";);
miaStringa = miaStringa.replace(/¯/g,; "& macr";);
miaStringa = miaStringa.replace(/°/g,; "& deg";);
miaStringa = miaStringa.replace(/±/g,; "& plusmn";);
miaStringa = miaStringa.replace(/²/g,; "& sup2";);
miaStringa = miaStringa.replace(/³/g,; "& sup3";);
miaStringa = miaStringa.replace(/´/g,; "& acute";);
miaStringa = miaStringa.replace(/µ/g,; "& micro";);
miaStringa = miaStringa.replace(/¶/g,; "& para";);
miaStringa = miaStringa.replace(/•/g,; "& middot";);
miaStringa = miaStringa.replace(/¸/g,; "& cedil";);
miaStringa = miaStringa.replace(/¹/g,; "& sup1";);
miaStringa = miaStringa.replace(/º/g,; "& ordm";);
miaStringa = miaStringa.replace(/»/g,; "& raquo";);
miaStringa = miaStringa.replace(/¼/g,; "& frac14";);
miaStringa = miaStringa.replace(/½/g,; "& frac12";);
miaStringa = miaStringa.replace(/¾/g,; "& frac34";);
miaStringa = miaStringa.replace(/¿/g,; "& iquest";);
miaStringa = miaStringa.replace(/À/g,; "& Agrave";);
miaStringa = miaStringa.replace(/Á/g,; "& Aacute";);
miaStringa = miaStringa.replace(/Â/g,; "& Acirc";);
miaStringa = miaStringa.replace(/Ã/g,; "& Atilde";);
miaStringa = miaStringa.replace(/Ä/g,; "& Auml";);
miaStringa = miaStringa.replace(/Å/g,; "& Aring";);
miaStringa = miaStringa.replace(/Æ/g,; "& AElig";);
miaStringa = miaStringa.replace(/Ç/g,; "& Ccedil";);
miaStringa = miaStringa.replace(/È/g,; "& Egrave";);
miaStringa = miaStringa.replace(/É/g,; "& Eacute";);
miaStringa = miaStringa.replace(/Ê/g,; "& Ecirc";);
miaStringa = miaStringa.replace(/Ë/g,; "& Euml";);
miaStringa = miaStringa.replace(/Ì/g,; "& Igrave";);
miaStringa = miaStringa.replace(/Í/g,; "& Iacute";);
miaStringa = miaStringa.replace(/Î/g,; "& Icirc";);
miaStringa = miaStringa.replace(/Ï/g,; "& Iuml";);
miaStringa = miaStringa.replace(/Ð/g,; "& ETH";);
miaStringa = miaStringa.replace(/Ñ/g,; "& Ntilde";);
miaStringa = miaStringa.replace(/Ò/g,; "& Ograve";);
miaStringa = miaStringa.replace(/Ó/g,; "& Oacute";);
miaStringa = miaStringa.replace(/Ô/g,; "& Ocirc";);
miaStringa = miaStringa.replace(/Õ/g,; "& Otilde";);
miaStringa = miaStringa.replace(/Ö/g,; "& Ouml";);
miaStringa = miaStringa.replace(/×/g,; "& times";);
miaStringa = miaStringa.replace(/Ø/g,; "& Oslash";);
miaStringa = miaStringa.replace(/Ù/g,; "& Ugrave";);
miaStringa = miaStringa.replace(/Ú/g,; "& Uacute";);
miaStringa = miaStringa.replace(/Û/g,; "& Ucirc";);
miaStringa = miaStringa.replace(/Ü/g,; "& Uuml";);
miaStringa = miaStringa.replace(/Ý/g,; "& Yacute";);
miaStringa = miaStringa.replace(/Þ/g,; "& THORN";);
miaStringa = miaStringa.replace(/ß/g,; "& szlig";);
miaStringa = miaStringa.replace(/à/g,; "& agrave";);
miaStringa = miaStringa.replace(/á/g,; "& aacute";);
miaStringa = miaStringa.replace(/â/g,; "& acirc";);
miaStringa = miaStringa.replace(/ã/g,; "& atilde";);
miaStringa = miaStringa.replace(/ä/g,; "& auml";);
miaStringa = miaStringa.replace(/å/g,; "& aring";);
miaStringa = miaStringa.replace(/æ/g,; "& aelig";);
miaStringa = miaStringa.replace(/ç/g,; "& ccedil";);
miaStringa = miaStringa.replace(/è/g,; "& egrave";);
miaStringa = miaStringa.replace(/é/g,; "& eacute";);
miaStringa = miaStringa.replace(/ê/g,; "& ecirc";);
miaStringa = miaStringa.replace(/ë/g,; "& euml";);
miaStringa = miaStringa.replace(/ì/g,; "& igrave";);
miaStringa = miaStringa.replace(/í/g,; "& iacute";);
miaStringa = miaStringa.replace(/î/g,; "& icirc";);
miaStringa = miaStringa.replace(/ï/g,; "& iuml";);
miaStringa = miaStringa.replace(/ð/g,; "& eth";);
miaStringa = miaStringa.replace(/ñ/g,; "& ntilde";);
miaStringa = miaStringa.replace(/ò/g,; "& ograve";);
miaStringa = miaStringa.replace(/ó/g,; "& oacute";);
miaStringa = miaStringa.replace(/ô/g,; "& ocirc";);
miaStringa = miaStringa.replace(/õ/g,; "& otilde";);
miaStringa = miaStringa.replace(/ö/g,; "& ouml";);
miaStringa = miaStringa.replace(/÷/g,; "& divide";);
miaStringa = miaStringa.replace(/ø/g,; "& oslash";);
miaStringa = miaStringa.replace(/ù/g,; "& ugrave";);
miaStringa = miaStringa.replace(/ú/g,; "& uacute";);
miaStringa = miaStringa.replace(/û/g,; "& ucirc";);
miaStringa = miaStringa.replace(/ü/g,; "& uuml";);
miaStringa = miaStringa.replace(/ý/g,; "& yacute";);
miaStringa = miaStringa.replace(/þ/g,; "& thorn";);
miaStringa = miaStringa.replace(/ÿ/g,; "& yuml";);   
	
document.mioform.risultato.value=miaStringa;

}
	
</script>

</head>

<body >

<form name="mioform">
<textarea name="testo" cols="35" rows="15"></textarea><br><br>
<textarea name="risultato" cols="35" rows="15"></textarea><br><br>
<input type="button" value="Clicca" onclick="rimpiazza()">
</form>

</body>

</html>
 
E giacchè ti troverai... come avrai notato ho dovuto scrivere : "& acute";
con lo spazio tra la & e acute, altrimenti mi riuscirebbe di nuovo il carattere " ' ",
e poi devo togliere lo spazio... faccio velocemente con l'opzione sostituisci ma non è possibile evitare lo spazio ?? cosi mi esce subito ad esempio da " l'unico " ----> " l&acuteunico " ....
Gentilissima come sempre . Ciao Domenico.
 
Scusami il codice del ritorno a capo in javascript come lo definisco ?
ho trovato il codice : nl2br

devo mettere cosi ma non mi funziona :

HTML:
miaStringa = miaStringa.replace(/nl2br/g, "<br>");
 
ok ho scritto una cavolata... quello nl2br, è una funzione del php... :(

ma non riesco a trovare il codice del ritorno a capo....
 
ciao, la sintassi in javascript è questa
Codice:
\n
 
Ciao,

\n per a capo, ogni volta che viene premuto il tasto invio ti mette un <br>


miaStringa = miaStringa.replace(/\n/g, "<br>");

Valeria.
 
ciao, quindi devo scrivere cosi ?

HTML:
miaStringa = miaStringa.replace(/\n/g, "<br/>");

mi sembra un pò strano...
 
Ok altra domanda stupida... che centrano i browser... vabbè... scusate :)

forse è la troppo contentezza di avere finalmente un programma che mi codifica velocemente il tutto ...

grazie :))))
 
Ciao criric, abbiamo risposto con pochi secondi di ritardo
Ciao Vale, non ti vedevo online cosi ho risposto io, senza immaginare che stavi rispondendo anche tu
le tue risposte cmq sono sempre molto piu complete delle mie :fonzie:
 
Non voglio essere in alcun modo il ruffiano di turno... ma fidatevi che siete entrambi bravissimi e solerti...
a volte solo non comprendo perchè a delle mie domande subito mi rispondete, altre rimangono ignorate... non è polemica.. ma solo per capire... cosi evito di postare argomenti inutili... :)
 
altre rimangono ignorate...
dipende dalla complessità di cio che chiedi e dal tempo che ognuno ha da dedicare
ricorda che siamo tutti qui per imparare quindi probabilmente ad alcune domande non sappiamo rispondere,
altre magari non le capiamo ed altre richiederebbero troppo tempo
Non c'è un motivo preciso ( parlo per me ovviamente anche se ho usato il plurale :-))
 
Ultima modifica:

Discussioni simili