11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
Je fais un formulaire qui possède une série de <select> à deux niveaux de dépendance. Il est donc totalement exclu de tout afficher en même temps sur la page, ce serait incompréhensible. Pour pallier à ce problème, j'ai mis en place un petit javascript qui ajoute un <select> à la page en fonction du "<select> parent". (si le javascript n'est pas activé, ce sont des tableaux de correspondance qui le suppléent).
Si on change une option à la racine, il convient de supprimer et de re-créer les <option> relatifs. Mon problème est que javascript ne veut pas les supprimer et ne me donne même pas d'explication, juste un laconique
a écrit :
uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: http://syn.whisno.be/contribuer/form_syn/localisation_dynamique.js :: affichageOption :: line 31" data: no]
Smiley confus (via FireBug)

La page en question

Le .js associé

Mon code est le suivant :
// Si matiere existe, on le supprime
if (document.getElementById("matiere_container")) {
	localisation.removeChild("matiere_container");
}

// Si option existe, on le supprime
if (document.getElementById("option_container")) {
	localisation.removeChild("option_container");
}


J'ai essayé lastchild (actuellement pour afficher le troisième <select>), mais il n'est pas définis paraît-il.

Je m'y prends vraiment très mal ?
Modifié par Whisno (15 Sep 2007 - 12:03)
C'est pas une string qu'il faut passer en parametre mais une référenfce au node en question donc :

localisation.removeChild(document.getElementById("option_container"));