aztec78
Messages postés5Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention11 janvier 2009
-
11 janv. 2009 à 11:30
aztec78
Messages postés5Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention11 janvier 2009
-
11 janv. 2009 à 22:31
bonjour,
je crée une fonction en javascript qui créé un formulaire de saisie avec un bouton envoyer et un bouton close
pour le bouton close j'affecte une fonction qui se chargera de supprimer les éléemnts du formulaire dynamiquement
input_close.setAttribute("onclick","close_insert_img_book(div_insert_img_b,div_parent_insert_img)");
input_close.onclick = close_insert_img_book(div_insert_img_b, div_parent_insert_img); // pour Internet Explorer
la fonction prend deux paramètres, voici donc cette fonction :
function close_insert_img_book(div_insert_img_b,div_parent_insert_img)
{
var enfant = document.getElementById(div_insert_img_b);
var parent = document.getElementById(div_parent_insert_img);
alert(enfant); alert(parent);
//enfant.parentNode.removeChild(enfant);
}
lorsque je lance et que j'affiche alert(enfant), et alert(parent), il m'affiche "Null" comme valeur, ce qui n'est pas normal puisque j'ai vérifié que les div étaient bien créés sur ma page web initiale
donc ma question serait de savoir si j'utilise la bonne syntaxe pour passer des paramètres dynamiquement en javascript ??
ou quelqu'un a-t-il un exemple ou une solution à ce problème ?
lorsque je double-clique, le formulaire se créé correctement, mais lorsque je souhaite le fermer et donc lancer la fonction close_insert_img_book, les messages d'alert affichent "Null" et "Null" ce qui signifie que mes variables n'ont pas été "passées" correctement ; c'est comme si la fonction ne détectait pas les div qui existent pourtant bel et bien
j'ai mis le code ci-dessous entre commentaires puisque pour le moment il gènère une erreur de la console javascript Firebug comme suit :
enfant is null
close_insert_img_book(div#div_insert_img1, div#div_parent_insert_img1)
//enfant.parentNode.removeChild(enfant);
une idée ? je suis sûr que c'est évident, mais je me prends trop la tête dessus !
aztec78
Messages postés5Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention11 janvier 2009 11 janv. 2009 à 16:06
c'est normal
div_insert_img_b est ma variable en paramètre, qui peut prendre comme valeur div_insert_img1 ou div_insert_img2 ou div_insert_img3, etc. (car mes lignes sont créées en fonction d'une table MySQL)
la "valeur" de mes div semble correcte, mais c'est comme si cette valeur ne suivait pas jusque dans ma fonction destinée à supprimer l'intérieur du div parent
aztec78
Messages postés5Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention11 janvier 2009 11 janv. 2009 à 22:31
j'ai essayé de mettre des alert comme ça et cela donne [object] comme résultat
si ça peux servir, voici le code complet de mes deux fonctions
function create_insert_img_book(section,set,div_insert_img,div_parent_insert_img,num,num_book)
{
var form_insert_img = document.createElement('form');
var fieldset_insert_img = document.createElement('fieldset');
var input_insert_img = document.createElement('input');
var input_submit = document.createElement('input');
var input_close = document.createElement('input');
var div_insert_img_b = document.getElementById(div_insert_img);
var div_parent_insert_img = document.getElementById(div_parent_insert_img);
form_insert_img.setAttribute("enctype","multipart/form-data");
form_insert_img.setAttribute("encoding","multipart/form-data");
var params = "?go="+section+"&"+set+"&"+num+"="+num_book;
form_insert_img.setAttribute("action",params);
form_insert_img.setAttribute("method","post");
<li>[?go=video Mes films ](1349)</li>
<li>[?go=biblio Mes livres ](3287)</li>
<li>[?go=disco Mes disques ](221)</li>
<li>[?go=bd_serie Mes Bds ](597)</li>
<li>[?go=magazine Mes magazines ](367)</li>
<li>[?go=serie_tv Mes séries Tv ](4)</li>
<li>[?go=advise Conseiller le site à un ami]</li>
<li>[javascript:AjoutFavo() Ajouter à vos favoris]</li>
<li><script language="javascript" type="text/javascript">PrintHomePage("http://www.multimedia-net.com","Multimedia-net en page d'accueil");</script></li>