Ciao a tutti,
ho creato una funzione che inserisce dentro ad una cella della tabella un campo di testo in modo che l'utente possa modificare il valore nel db mysql. Posto il codice:
function mod_localita(id_riga_corr)
{
//trasforma la stringa in array direttamente
var ar_riga_corr=id_riga_corr.split('|');
//scorre l'array e trasforma le celle della riga in textbox per modificare i dati su mysql
for(i=0;i<ar_riga_corr.length;i++)
{
var valore=document.getElementById(ar_riga_corr[i]).innerHTML;
//valore=valore.replace(/'/g, "\\'");
//alert (valore);
document.getElementById(ar_riga_corr[i]).innerHTML=
"<input type='text' id='"+ar_riga_corr[i]+"' name='"+ar_riga_corr[i]+"' class='modifica' value='"+valore+"'>";
//quando cicla l'ultima voce aggiunge anche il pulsante 'salva' per salvare le modifiche
if (i==ar_riga_corr.length-1)
{
document.getElementById(ar_riga_corr[i]).innerHTML=
"<input type='text' id='"+ar_riga_corr[i]+"' name='"+ar_riga_corr[i]+"' class='modifica' value='"+valore+"'>"+
"<input type='submit' id='puls_"+ar_riga_corr[i]+"' name='puls_"+ar_riga_corr[i]+"' value='salva'>";
}
}
}
Funziona perfettamente quando la variabile $valore non contiene apostrofi, altrimenti il "value" del campo di testo viene troncato. Come potete vedere ho cercato di capire in quale momento avviene il troncamento attraverso l'alert. Fino a qui il valore mostrato è corretto. Quindi il problema è nel passaggio successivo ma non so come risolverlo. Qualcuno può aiutarmi?
Grazie 1000. ciao![]()