cs_badrbadr
Messages postés475Date d'inscriptionjeudi 19 juin 2003StatutMembreDernière intervention 3 novembre 20081 22 janv. 2006 à 14:12
je pense que tu dois jongler avec un peu de javascript.
voici une idée que j'ai eu:
Ta fenetre fille, une fois qu'elle a été bien paramétré avec les nouveaux paramètres, transmet ces derniers à la fenêtre parent. Les paramètres transmis seront stockés dans des champs Hidden de la fenêtre parent. Ensuite, la fenetre fille déclenche le "submitage" de la fenetre parent.
Quand il y'aura un postback de la fenêtre parent, tu dois récupérer les valeurs des champs Hidden et ajuster ton Datagrid en fonction.
Ça nécessite une assez bonne connaissance de Javascript, mais je pense que c'est faisable
cs_tiolebucheron
Messages postés20Date d'inscriptionjeudi 20 mars 2003StatutMembreDernière intervention 2 novembre 2010 22 janv. 2006 à 23:00
Oui Merci de ta réponse mais je suis perdu
Pour la fenêtre fille quand tu parles des nouveaux paramètres, je
suppose que c'est les nouvelle référence du datagrid. donc un dataset.
Je ne comprend pas ce que c'est le "submitage" ni un postback de la fenêtre parent!!!
Pour être plus simple On imagine
De la fenêtre fille j'initialise un hidden de la fenêtre parent avec la
requête sql du nouveau formatage du datagrid. et un autre hidden
indiquant que le datagrid est a mettre à jour .
Pas simple déja pour faire ce passage.
Ensuite en validant par un bouton, sur ma fenêtre fille, les fonction suivante s'excute
1° mise à jour des hidden
2° fermeture de la fenetre fille
3° reload de la fenetre mère hiddent test = VRAI je
reconstruit un dataset a partir de la requête et reconstruit le
datagrid.
Cette solution te ou vous paraît-elle viaible?
par contre je rentre des difficultés pour le point 1 et 3. pouvez vous me donner des indications pour que je réussisse cela.
Merci de votre aide à tous et merci a toi badrbadr
cs_badrbadr
Messages postés475Date d'inscriptionjeudi 19 juin 2003StatutMembreDernière intervention 3 novembre 20081 22 janv. 2006 à 23:57
Salut,
T'as compris mon idée. Maintenant, pour ce qui est du "comment faire", je vais te présenter le code source de deux pages html. une joue le rôle de parent, et l'autre celle de fille.
c'est très clair, tu peux copier le code source et le tester chez toi
parent.html
<html>
<head>
<title>Parent window</title>
</head>
<body>
<ahref="#"onclick="window.open('child.html', 'child');">open new window</a>
<inputtype="button"value="changer le champ 'hidden'"
onclick="ChangeParentForm();"/>
</body>
</html>
Tu sais maintenant comme modifier les champs de la fenêtre parent et comment faire un postback du formulaire (il faut enlever les commentaires).
Maintenant, une fois le postback fait, tu récupères les valeurs de tes champs cachés et tu fais les modifications à ton DataGrid.
bon, je te laisse tester le code et on s'en reparle
p.s.: dans les exemples, le champ était une zone texte et non un champ de type caché, c'était juste pour voir que le champ texte va passer de false à true
cs_tiolebucheron
Messages postés20Date d'inscriptionjeudi 20 mars 2003StatutMembreDernière intervention 2 novembre 2010 23 janv. 2006 à 22:05
Bonjour
Je te remercie pour ce code. Je post simpement pour te prévenir que je
regarderai cela en fin de semaine car je suis en déplacement a partir
de demain.
Merci encore a bientot
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_tiolebucheron
Messages postés20Date d'inscriptionjeudi 20 mars 2003StatutMembreDernière intervention 2 novembre 2010 25 janv. 2006 à 10:41
Bonjour je viens d'essayer mais j'ai un soucis
Ma page mère welcome.htm est constituée de deux frames "fe_fonction" et "fe_data".
Le bouton ouvrant la page fille se trouve dans la frame "fe_fonction"
Le datagrid et les hidden est dans la frame "fe_data"
Le nom de la fenetre fille est chrono_search.aspx.
Mon problème opener.document.getElementById("hiddenField"); me fait une erreur il me dit que le hiddenField
est null ou pas définit. Je pense que c'est un problême de chemin de la
fenêtre parent. En plus avec les frame c'est moins évident.
cs_badrbadr
Messages postés475Date d'inscriptionjeudi 19 juin 2003StatutMembreDernière intervention 3 novembre 20081 26 janv. 2006 à 15:42
c'est comme quand t'es dans hotmail, logé dans ta boite d'e-mail et que t'appuies sur F5
le navigateur te demande pour savoir s'ils doit renvoyer les informations dans le header (post et get)
je pense pas que ça se produit normalement lorsqu'on fait ça avec un script mais bon.