OVH Cloud OVH Cloud

Pb submit

10 réponses
Avatar
MBFAC
Bonsoir

il est tard je craque !
voila le sais c'est tordu !
j'ai deux frames ( je sais c'est vilain !)

frame 0
1 champ : input type=texte name=NomForm

frame 1
x formulaires + x boutons
en cliquant je passe le nom du formulaire correspondant au bouton
dans le champ NomForm de la frame 0 (ça marche)

Je souhaite faire un submit du formulaire x de la frame 1 a partir des infos
de la frame 0
un truc du genre
onclick = "javascript:parent.frames[1].forms[NomForm.value].submit()
mais ça marche pas

des idées ?
Merci

Michel

10 réponses

Avatar
Thibault
MBFAC wrote:

Bonsoir

il est tard je craque !
voila le sais c'est tordu !
j'ai deux frames ( je sais c'est vilain !)

frame 0
1 champ : input type=texte name=NomForm

frame 1
x formulaires + x boutons
en cliquant je passe le nom du formulaire correspondant au bouton
dans le champ NomForm de la frame 0 (ça marche)

Je souhaite faire un submit du formulaire x de la frame 1 a partir des infos
de la frame 0
un truc du genre
onclick = "javascript:parent.frames[1].forms[NomForm.value].submit()
mais ça marche pas

des idées ?
Merci

Michel



Oui, il est tard, et j'ai pas tout compris :-)
Avec un peu de code, je serais plus à l'aise.

Si j'ai bien compris, tu sais ce que tu veux, mais il te manque que la
syntaxe, donc je pense que ceci peut t'aider :

Si le onclick est dans le frame 0:
onclick="parent.frames[1].forms[document.forms['form1'].NomForm.value].submit();
return false;"

Si il est dans le frame 1:
onclick="document.forms[parent.frames[0].forms['form1'].NomForm.value].submit();
return false;"

N'importe ou :
onclick="parent.frames[1].forms[parent.frames[0].forms['form1'].NomForm.value].submit();
return false;"

Sinon, faudrait me re-expliquer, parce que je suis un peu perdu :-)

--
A+
Thibault

Avatar
ASM


Sinon, faudrait me re-expliquer, parce que je suis un peu perdu :-)


je crois qu'il veut "simplement" :

onclick = "parent.frames[1].forms[document.forms[0].NomForm.value].submit();"

Avatar
Mokhet
ASM wrote:

je crois qu'il veut "simplement" :

onclick = "parent.frames[1].forms[document.forms[0].NomForm.value].submit();"


dans ce cas autant faire

onclick = "parent.frames[1].forms[0].submit();"

oui il est tard, bonne nuit la foule :)

--
laurent
http://mokhet.com/

Avatar
MBFAC
Bonjour

Je remercie les couche-tard
cela m'a permis d'identifier le pb

si je fais : a partir de la frame 1
parent.frames[0].CM1.UnChampText.value="test"

ça marche

si je fais

parent.frames[0].forms['CM1'].UnChampText.value="test"

parent.frames[0].forms[0].UnChampText.value="test"

erreur : parent frame 0 est null ou n'est pas un objet



C'est comme si la collection forms[index] ne fonctionnait que sur une meme
page HTML ?

merci pour vos commentaires

Michel
Avatar
MBFAC
si je fais : a partir de la frame 1
parent.frames[0].CM1.UnChampText.value="test"

ça marche

si je fais

parent.frames[0].forms['CM1'].UnChampText.value="test"

parent.frames[0].forms[0].UnChampText.value="test"

erreur : parent frame 0 est null ou n'est pas un objet


IL FAUT FAIRE :

parent.frames[0].document.forms['CM1'].UnChampText.value="test"

parent.frames[0].document.forms[0].UnChampText.value="test"

Merci à tous

Michel BERTRAND

Avatar
Mokhet
Mokhet wrote:

onclick = "parent.frames[1].forms[0].submit();"

oui il est tard, bonne nuit la foule :)


Scrogneugneu, ça m'intrigue depuis quelques heures. Y'a pas un objet
document d'abord entre frames et forms ?

parent>frames>document>forms

humm, pas trop l'envie de tester là, trop fatigué et il est temps
d'aller au lit. On verra demain si le problème existe encore. Vraiment
bonne nuite cette fois :D

--
laurent
http://mokhet.com/

Avatar
MBFAC
Scrogneugneu, ça m'intrigue depuis quelques heures. Y'a pas un objet
document d'abord entre frames et forms ?

MAIS SI ! :-))) et ça marche !


Avatar
ASM

Mokhet wrote:

onclick = "parent.frames[1].forms[0].submit();"

oui il est tard, bonne nuit la foule :)


Scrogneugneu, ça m'intrigue depuis quelques heures. Y'a pas un objet
document d'abord entre frames et forms ?

parent>frames>document>forms


Ben ... à mon idée ... si ... il faut donner l'arborescence complète
comme j'avais tenté de la donner ...

onclick = "parent.frames[1].document.forms[document.forms[0].NomForm.value].submit();"

ou (on n'sait pu d'où qu'on part)

onclick = "parent.frames[0].document.forms[document.forms[0].NomForm.value].submit();"


Avatar
ASM

IL FAUT FAIRE :

parent.frames[0].document.forms['CM1'].UnChampText.value="test"

parent.frames[0].document.forms[0].UnChampText.value="test"


??
ce truc submitte bien n'importe lequel des forms de l'autre page ?

Avatar
MBFAC
Bonjour
ce truc submitte bien n'importe lequel des forms de l'autre page ?
-oui

en fait si on met le nom du formulaire en dur ça marche sans document
parent.frames[0].MonFormulaire.UnChampText.value="test"

si on met le nom ou l'index du form en variable il faut document
parent.frames[0].document.forms[0].UnChampText.value="test"

je pense en fait qu'il faut tjs document

slt