Pb Ajax et transmissons de données via url [Résolu]

Signaler
Messages postés
166
Date d'inscription
mercredi 27 juin 2007
Statut
Membre
Dernière intervention
31 mars 2014
-
Messages postés
166
Date d'inscription
mercredi 27 juin 2007
Statut
Membre
Dernière intervention
31 mars 2014
-
Bonjour à tous,
j'ai un petit soucis dans la réalisation d'un projet.

Je vous fais le topo vite fait:
Ma page web se divise en 2 frames, celle de gauche étant le menu et l'autre une page vierge sur laquelle j'essai de créer un tableau à la volée grâce aux infos transmis via la frame droite. Je construit donc le tableau via la fonction suivante:
window.parent.frame_droite.open(); window.parent.frame_droite.document.writeln(" bla bla bla"); etc...
window.parent.frame_droite.close();

Tout fonctionne et  j'arrive exactement à ce que je désirai.
Cependant, j'ai décidé de l'améliorer et c'est là que le bas blesse. En effet, je veux désormais pouvoir rendre accessible ce projet en permettant à tout un chacun de pouvoir inscrire ce qu'il désirait dans les cellules.
Voilà ce dont je veux me servir: (pour faire court, le tableau ne contiendra qu'une ligne)

<form name= hari>
Combien de colonnes votre tableau contient-il?

[# Comment voulez-vous les nommer:]

         

<SCRIPT>
var tnt="";
var no=hari.nb_col.value;
for(i=1;i<no;i++){  
 tnt+="La colonne "+i+":

"
}


document.getElementById("titre_col").innerHTML=tnt;
</SCRIPT>
</form>

Et mon pb est que la variable no vaut forcément null, car chargé au début le input type correspondant est vide donc la valeur nulle. Pas la peine d'être devin pour comprendre que rien ne s'affiche lorsque j'affiche la div "titre_col", la boucle ne démarrant pas.

Ma question est donc celle-ci:
j'ai 2 idées:
1) J'ai l'idée qu' AJAX pourrais m'aider ? Je chauffe ou gèle carrément sur place ?
Si oui, n'y connaissant rien du tout (y a 4 mois j'y connaissais rien en javascript aussi), quelqu'un pourrait d'une m'indiquer un bon tutoriel, et de deux me filer un code qui permettrait d'obtenir ce que je veux: c'est à dire que la valeur de no
soit généré en fonction de ce qui est inscrit dans le input (en fait rien ne change dans la frame de gauche excépté la div cachée)

2) L'autre, plus en mode système D: après avoir rempli le nombre de colonnes voulu,
recharger la page en donnant une valeur par défaut à l'input type correspondant. Ainsi la variable no vaudra cette fois bien ce que je veux. Mais cela est-il possible ? (ex: clic sur un lien qui recharge la même url sur la même target, la frame gauche, en transmettant par la barre d'adresse la valeur de no , du style => mon url'hari.nb_colmenu=4  ), je pense que cela est faisable, mais peut être un peu trop gadgetoonesque par rapport à ce que je veux faire (surtout qu'il est possible que cela se fasse plusieurs fois et donnerai donc une url à rallonge)

Bref, si quelqu'un peut m'éclairer, je suis de suite preneur.
Merci d'avance.
A bientôt.
J'espère.
;-)

Signé Sagat

3 réponses

Messages postés
166
Date d'inscription
mercredi 27 juin 2007
Statut
Membre
Dernière intervention
31 mars 2014
1
Merci Anthed,
j'ai résolu mon pb d'une autre façon (voir mon autre question un peu plus loin).

Mais ce que tu m'as proposé est très intéressant, je l'étudierai plus en profondeur dès que j'en aurais le temps.

Merci encore.

Signé Sagat
Messages postés
166
Date d'inscription
mercredi 27 juin 2007
Statut
Membre
Dernière intervention
31 mars 2014
1
Aucune réponse?

Système D:
Je vais alors réecrire le même mesage mais avec un autre titre pour le sujet, je crois qu'il rebute un peu trop les forumeurs (seulement 8 personnes l'ont lu...)

Faut dire que PB avec Ajax et transmission de données via Url, ça le fait pas trop..
Merci quand même à ceux qui aurait lu ce post, rendez-vous quelques messages plus loin dans les questions du forum.

Signé Sagat
Messages postés
152
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
17 janvier 2014
3
Hello,

Mais non , le titre ne fait pas peur ... :)

Tu peux construire ton tableau après le chargement de la page.
Dans ta page, crée le table vide :

Lorsqu'une valeur est saisie dans ton champ nb_col, appelle une fonction qui va compléter le tableau. Pour ce faire, voir les fonctions insertRow(), insertCell(), appendChild() (plein d'exemples sur CS)

A+.