[javascript] creazione dinamica elemento
Ciao a tutti!
ho un problema con la creazione dinamica di un div, vi mostro lo script (tutto questo va dentro ovviamente una funzione):
miodiv = document.createElement('div');
miopar = document.createElement('p');
text = createTextNode('ciao');
miopar.appendChild(text);
miodiv.appendChild(miopar);
document.body.appendChild(miodiv);
la funzione è richiamata da un tasto con onClick (il tasto si trova in un altro div), quindi il mio div creato dinamicamente (con all'interno un paragrafo) si dovrà appendere sotto il div presente in partenza: il div viene effettivamente creato (controllato con DOM inspector di Firefox), solo che il contenuto è "undefined", quindi penso ci siano problemi con la creazione del paragrafo.
Qualcuno può aiutarmi? grazie in anticipo

miodiv = document.createElement('div');
miopar = document.createElement('p');
text = createTextNode('ciao');
miopar.appendChild(text);
miodiv.appendChild(miopar);
document.body.appendChild(miodiv);
la funzione è richiamata da un tasto con onClick (il tasto si trova in un altro div), quindi il mio div creato dinamicamente (con all'interno un paragrafo) si dovrà appendere sotto il div presente in partenza: il div viene effettivamente creato (controllato con DOM inspector di Firefox), solo che il contenuto è "undefined", quindi penso ci siano problemi con la creazione del paragrafo.
Qualcuno può aiutarmi? grazie in anticipo

Risposte
La sparo: non sarà che va creato come '
' e '
' o non è necessario?
Immagino che poi li chiuderai i tag....
non ho afferrato il tuo ragionamento, cioè questa è solo una prova (e non funziona), poi dopo devo creare un ciclo for per creare più paragrafi all'interno del div, e questo mi spaventa un pò

Ok, quanto ho scritto prima non c'entra nulla, tu puoi tranquillamente creare degli elementi HTML dinamicamente senza i simboli di < e >.
Il codice che hai scritto sembra corretto ma e' difficile valutarlo da solo... perche' non posti tutto il sorgente (se non e' enormemente grande): html+ javascript?
Il codice che hai scritto sembra corretto ma e' difficile valutarlo da solo... perche' non posti tutto il sorgente (se non e' enormemente grande): html+ javascript?
il codice non è niente di speciale, sono due file divisi, uno html ed uno js (dove si trova questa funzione); nel file html si trova un tasto che con la funzione "onClick" mi lancia la funzione presente nel file javascript. Il fatto è che il div viene attaccato al body (ho visto col DOM inspector), ma è senza contenuto (undefined per la precisione), quindi penso ci siano problemi con la creazione dinamica del paragrafo.
text = document.createTextNode("amiga");
prova....
prova....
o mio dio che scemo che sono! non ho messo il document. XD ora sono in facoltà quindi non posso correggere ma sicuramente quello è un errore spaziale! non l'avrei mai visto da solo, ti ringrazio tantissimo
stasera a casa controllo e posto se va bene.

di nulla

funziona
grazie di nuovo, questo tipo di errori sono difficili da trovare da soli.

E' solo una questione di esperienza; vedrai che con il tempo (e la pratica) molte cose ti salteranno subito all'occhio

Ciao! Sono il tuo Tutor AI, il compagno ideale per uno studio interattivo. Utilizzo il metodo maieutico per affinare il tuo ragionamento e la comprensione. Insieme possiamo:
- Risolvere un problema di matematica
- Riassumere un testo
- Tradurre una frase
- E molto altro ancora...
Il Tutor AI di Skuola.net usa un modello AI di Chat GPT.
Per termini, condizioni e privacy, visita la relativa pagina.
Per termini, condizioni e privacy, visita la relativa pagina.