Ho una pagina php che funziona pressapoco così: all'inizio vengono creati tanti layer (tag DIV) leggendo i dati dal database (ogni layer ha nome e id uguali tra loro e univoci nella pagina), e tali div sono tutti invisibili. Tramite un'imagemap e onclick io vorrei prendere il contenuto di un div e copiarlo in una cella di una tabella.
Tale script funziona solo la prima volta e tutte le altre volte ottengo come errore "necessario oggetto". Debuggando mi sono accorto che l'errore è generato dall'istruzione
document.getElementById(layername).innerHTML che restituisce "undefined object".
La cosa più triste è che lo stesso meccanismo in una pagina senza l'imagemap funziona da dio.
lo script è
e viene attivato tramite un onclick="cambia('Layer37')" (il nome del layer cambia a seconda del layer preso in considerazione)codice:function cambia(layername) { var nome ='td1'; document.getElementById(nome).innerHTML = document.getElementById(layername).innerHTML; }
se al posto dell'assegnamento uso un alert(document.getElementById(layername).innerHTML ) non ricevo mai errore e tutto funziona bene.
Uso IE6 e Firefox, ma come già detto, lo stesso meccanismo in una pagina diversa funziona, per cui non credo sia incompatibilità del browser.
Vi prego, aiutatemi a capire dov'è l'errore![]()