View Full Version : creare una select tramite JS
TurboCresta
05-02-2007, 18:09
//creo la select
var sel = document.createElement("select");
//attribuisco il nome
sel.name=name;
//spero di attribuire l'evento onchange...
sel.onchange = alert('ciao');
ecco il problema è che non fa l'alert del ciao quando scatta l'evento onchange di quella select ma scatta l'alert quando arriva in quel punto del JS!
HELP!
noregret
05-02-2007, 19:55
Ciao, non funziona semplicemente perchè devi registrare l'evento tramite associazione ad una funzione, es. :
{
[CODE...]
sel.onchange = doSomething;
[CODE...]
}
function doSomething(e)
{
if (!e) var e = window.event;
alert('ciao');
}
Puoi anche passargli una funzione anonima tipo ...
sel.onchange = function() {alert('ciao');}
Non ho il tempo di provarlo, ma dovrebbe funzionare. Ti consiglio di guardare su Quirksmode (http://www.quirksmode.org/js/introevents.html) la gestione degli eventi in JS. Quirksmode (sito) e il libro pubblicato dall'autore sono ottimi per quando riguarda JS e DOM. Ciao!
P.S. Nell'esempio che hai postato manca l'aggiunta degli elementi <Option> , non so se senza di essi ti venga generato l'evento di onchange sul combobox
ecco il problema è che non fa l'alert del ciao quando scatta l'evento onchange di quella select ma scatta l'alert quando arriva in quel punto del JS!Ovvio ... quella è una assegnazione. A sel.onchange viene assegnato il risultato della chiamata alla funzione alert (che tra l'altro non ritorna nulla ... 'undefined' per essere precisi).
sel.onchange = function () {
alert ('ciao');
}Così assegni a sel.onchange una funzione che esegue l'alert.
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.