Js : fonctionnement tres bizarre de mon script

Js : fonctionnement tres bizarre de mon script - HTML/CSS - Programmation

Marsh Posté le 30-01-2003 à 15:36:37    

:hello: tlm !
 
J'ai un script dans un popup qui marche tres bien pour l'instant :


<script language="JavaScript">
window.opener.user.pass.value="<?echo $nb[pass];?>";
window.opener.user.site.options[window.opener.user.site.selectedIndex].text="<?echo $nb[site];?>";
window.opener.form.site.value="<?echo $nb[site];?>";
window.opener.form.login.value="<?echo $nb[login];?>";
window.opener.form.pass.value="<?echo $nb[pass];?>";
window.opener.form.titre.focus();
setTimeout("window.close()",300);
</script>


 
Mais si je rajoute ce form dans la page qui apelle le script ci dessus , ca fout la merde et je comprends pas pkoi :
 

<form name="g" method="get" target="fenetre2" action="http://google.fr/search"  onsubmit="window.open('http://google.fr/search','fenetre2','location,menubar,scrollbars,resizable,toolbar');return(false);"><table background="google.gif" width="140px" height="50px"><tr><td><input type="text" class="inform" name="q" size="10"></td><td><input type="Image" src="goog.gif"></td></tr></table></form>


 
=>Si je mets ce form 'g' dans la page principale , j'obtiens l'erreur window.opener.user.pass a la valeur nul ou n'est pas  un objet
 
et je me repete sans ce form 'g' je n'ai pas de pb...
 
Y'a kkun ki comprend ce qui se passe ??  
 
  [:sharpknife]


Message édité par kayasax le 30-01-2003 à 16:06:20
Reply

Marsh Posté le 30-01-2003 à 15:36:37   

Reply

Marsh Posté le 30-01-2003 à 15:43:06    

>> window.opener.form.site.value="<?echo $nb[site];?>";
 
peut-être un mot réservé.
 
edit : et on ne le répètera jamais assez, la seule méthode correcte de récupérer une node est document.getElementById. ton code est donc incorrect.
 
window.opener.form.site.value >> window.opener.document.getElementById('site';).value
 
(en prenant soin de mettre un id dans la balise, qui n'est du coup plus accessible par 'name';)


Message édité par youdontcare le 30-01-2003 à 15:44:56
Reply

Marsh Posté le 30-01-2003 à 15:45:24    

smetonerait j'utilises tt le temps ca m'enfin v changer...

Reply

Marsh Posté le 30-01-2003 à 15:47:31    

pour le getElement j'ai essaye aussi : cette methose n'est pas supportée....

Reply

Marsh Posté le 30-01-2003 à 15:48:24    

quel navigateur, quel code ?

Reply

Marsh Posté le 30-01-2003 à 15:52:38    

ie6 sp1, peut pas mettre tout le code y'en a trop la seule subtilite c que mes form sont dans des div differents mais bon je vois pas ce que ca change...

Reply

Marsh Posté le 30-01-2003 à 15:55:59    

kayasax a écrit :

peut pas mettre tout le code y'en a trop

ben justement, désosse ... :D
 
tu devrais avoir d'un côté :
 
<input name='pass' id='pass' type='text' value='password'>
 
et de l'autre
 
alert(window.opener.document.getElementById('pass';).value)
 
devrait te donner 'password'

Reply

Marsh Posté le 30-01-2003 à 15:57:13    

:heink:  
 
si j' enleve le popup ca marche !!!
 <form name="g" method="get" action="http://google.fr/search" ><table background="google.gif" width="140px" height="50px"><tr><td><input type="text" class="inform" name="q" size="10"></td><td><input type="Image" src="goog.gif"></td></tr></table></form>  
 
 
c dingue ca nan ??

Reply

Marsh Posté le 30-01-2003 à 16:06:27    

kayasax a écrit :

c dingue ca nan ??

ton code est incorrect, ça n'a donc rien de dingue que ça plante. DÉSOSSE ! prend 2 nouveaux fichiers html, copie les deux bouts de code incriminés, et teste !

Reply

Marsh Posté le 30-01-2003 à 16:15:04    

bon ben tout refonctionne en utilisant target="_blank" dans mon form "g" ... la methode getElementById refonctionne aussi...
 :heink:


Message édité par kayasax le 30-01-2003 à 16:17:04
Reply

Marsh Posté le 30-01-2003 à 16:15:04   

Reply

Marsh Posté le 30-01-2003 à 16:25:53    

houla je déclare forfait :D

Reply

Marsh Posté le 30-01-2003 à 16:26:39    

en tt cas merci de t'interesser !! :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed