modif d'un élément d'un formulaire dla page mère dun popup

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : modif d'un élément d'un formulaire dla page mère dun popup

Oups

par ANKOU94 » 05 juin 2005, 00:44

J ai parlé un peu vite ce code fonctionne parfaitement mem dans une boucle

C cool mais...

par ANKOU22 » 04 juin 2005, 22:29

Salut à tous,
Effectivement cette fonction marche pour ajouter un élément à la liste...

mais chose étrange et curieuse je n'arrive pas mettre cette fonction dans une boucle ou mettre une boucle dans cette fonction.

Une idée ?


ANKOU94

par xfouayeman » 23 mai 2005, 11:31

<code>
function createOption(f,e,newValue,newText)
{
var objSelect=window.opener.document.forms[f].elements[e];
var objOption = window.opener.document.createElement("option");
objOption.text = newText
objOption.value = newValue

if(window.opener.document.all && !window.opener.opera) objSelect.add(objOption);

else objSelect.add(objOption, null);
}
</code>
voilà ça c cool

par xfouayeman » 23 mai 2005, 11:00

IE gère bien le window.opener car comme je l'ai indiqué j'arrive déjà à changer le contenue dans d'un champ de texte de la fenêtre mère, j'arrive meêm à positionner une liste déroulante sur l'index désiré.
le seule problème c qu'il ne veut pas me laisser rajouter un élément dans une liste déroulante, comme si ct vérouillé.
J'aimerai essayé ave la technique où on fait create eleement, mais je comprend pas son utilisation. je cré un élément du document, mais j'en fais quoi ensuite, comment je l'ajoute aux options de ma liste déroulante?
j'ai essayé malistedéroulante.createElement, mais ça gère pas cet objet ne gère pas la propriété.
encore un peu d'aide?

par rami » 20 mai 2005, 23:26

Au lieu de faire o= new Option("truc"), essaie de faire ca:

Code : Tout sélectionner

var element = document.createElement("truc");

par naholyr » 20 mai 2005, 23:09

Bah moi j'ai dit ça je sais plus trop, je sais juste qu'il vaut mieux définir w.opener=window pour être sûr. C'est peut-être IE, netscape, Opera, Amaya j'en sais rien :)

Pour en revenir au sujet, elle est comment ta liste ? Tu veux ajouter dynamiquement un élément dans un select c'est ça ?

par zeus » 20 mai 2005, 17:31

Il me semble qu'IE ne définit pas tout seul window.opener.
Il faut définir la fenêtre mère au moment de l'ouverture de la fenêtre fille:

Code : Tout sélectionner

w = window.open(...); w.opener = window
Je suis pas d'accord Naholyr, IE gère tout seul l'attribut opener

le pire c kil le fait!

par xfouayeman » 20 mai 2005, 17:25

si si juste avant ce truc qui marche pas je fais ça:
window.opener.document.bonDeCommandeForm.selectCartouche.value=cartouche

et ça le pire c ke a marche, dans mon champ de text, il me cale ce que je ve, j'arrive jusqu'à caler une liste sur une option particulière, mais rajouter l'option il veut pas, et sous firefox, ça marche!

ptetre l'attribut .lenght ne marche pas ou est-il protégé sous IE;
c pas un objet indéfini kil me sort comme erreur, c'est levage d'exception. jpense que c'est un problème d'autorisation, mais je sais pas comment on fait pour contourner.
tu vois?

par naholyr » 20 mai 2005, 17:12

Il me semble qu'IE ne définit pas tout seul window.opener.
Il faut définir la fenêtre mère au moment de l'ouverture de la fenêtre fille:

Code : Tout sélectionner

w = window.open(...); w.opener = window

modif d'un élément d'un formulaire dla page mère dun popup

par xfouayeman » 20 mai 2005, 15:59

je sui sdans une fonction appelé par un onchange sur une liste déroulante à l'intérieur d'un pop up. je veux ajouter une option dans un liste déroulante dans un formulaire de la page mère.
formulaire de la page mère: bonDeCommandeForm
liste déroulante:selectType_de_cartouche

Le code:

var o=new Option('cartouche choisi:');
window.opener.document.bonDeCommandeForm.selectType_de_cartouche.options[window.opener.document.bonDeCommandeForm.selectType_de_cartouche.options.length]=o;

sous Mozilla forefox ça marche, pas sous IE.
qq1 a une solution?