Scusatemi se la domanda potrà sembrare banale o se è già stata discussa (ho fatto una ricerca veloce sul forum ma non ho trovato una domanda analoga).
Allora. Il problema è molto semplice.
Io ho una funzione che riceve in ingresso una variabile che deve quindi stampare a video con un comando tipo:
codice:
finestra.innerHTML = testo;
La funzione in questione viene richiamata però come segue:
codice:
html += '<tr><td class="normale"><a href="#" onmouseover ="scrivi (document.getElementById (\'scritture\'),\\'' + prec_numero + '\\');">
Prec.Numero</a></td></tr>';
Il problema nasce in quanto se nella variabile stringa (in questo caso prec_numero) ci sono degli apici (o doppi apici nel caso inverta gli ' con gli " nella costruzione della stringa di html, lui si blocca considerando la stringa finita.
ES.
prec_numero = "L'essere umano";
Lui considera la stringa, al momento del passaggio, formata solo da L e mi da errore su quello che viene dopo (essere umano).
Ho provato anche a scrivere inline il comando:
codice:
html += "<tr><td class=\"normale\"><a href=\"#\" onmouseover =\"document.getElementById (\'scritture\').innerHTML = \'' + prec_numero + '\' ;document.getElementById (\'scritture\').style.display = '';\"\">prec_numero</a></td></tr>";
Ma in questo caso, anche provando varie combinazioni di apici, escape ecc... solitamente mi stampa "edizione" ma non il contenuto della stessa.
Grazie e alla prossima...