Problème appel fonction avec window.opener

Signaler
Messages postés
1
Date d'inscription
mardi 23 mars 2004
Statut
Membre
Dernière intervention
11 mai 2005
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Salut à tous,

J'ai ma page appelante avec un select que je veux remplir grace à un autre select qui se trouve dans une popup que j'appelle avec ma page appelante. Cependant j'ai une erreur javascript qui se produit et qui me dit en parlant du window.opener : cet objet ne gère pas cette propriété ou cette méthode. Mon code est le suivant :

- page.appelante.asp:
<SCRIPT LANGUAGE="JavaScript">
//***************** Transfert specialite et mot clé vers formulaire ********>
function newOption(oText, oValeur,sChamps) {
if (sChamps=="Specialite"){
s = document.Form_creation_doc.Specialite;
}
if (sChamps=="MotCle"){
s = document.Form_creation_doc.mot_clé;
}
o = new Option(oText, oValeur);
blanc=new Option(s.options[(s.length)-2].text,s.options[(s.length)-2].value);
s.options[s.length] = o;
s.options[s.length-1] = blanc;

}
</script>

[JavaScript: void window.open('popup.asp','Choice_spe','width=700,height=300,left=300,top=50,noresize,scrollbars,status'); Spécialités existantes]

- popup.asp :
<SCRIPT LANGUAGE="JavaScript">
function addToList(){
cho=document.forms.lookForm.Choices;


if (cho.selectedIndex!=-1){
spe=window.opener.document.forms[0].Specialite;
for (var i=0; i<cho.length; i++){
if (cho[i].selected){
//-------------Specialite------------------------
spe.length++;
window.opener.newOption(cho[i].text,valeur,"Specialite");
}
}
}
}
</script>

Voila, je n'ai paaas mis tout le code html mais l'erreur se fait sur le window.opener.newOption(...). Et si je ne passe pas par la fonction et que je mets tout dans la popup, ca me génère l'erreur suivante : le serveur a généré une exception.

Merci d'avance pour votre aide

1 réponse

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
Bonjour,
je ne pense pas que le window.opener pose problème
( pas testé car trop de choses à recoder) , mais
blanc= new Option(s.options[(s.length)-2].text,s.options[(s.length)-2].value);
si, ==>
blanc =new Option(s[s.length-2].text,s[s.length-2].value);
peut-être ?
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~