Actualiser une page si champ select modifié

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

Vespa
WRInaute impliqué
WRInaute impliqué
 
Messages: 341
Inscription: Lun Nov 17, 2003 9:41

Actualiser une page si champ select modifié

Message le Ven Nov 05, 2004 9:10

Bonjour à tous.

J'ai un formulaire dans une page dans lequel il y a notamment un champ select.
Je souhaiterais que cette page s'actualise si un internaute déroule le champ select et choisi un des choix de ce champ.

Je pense que je dois passer par du java ? mais je n'y connais rien..
Es ce que quelqu'un pourrait me filer un exemple sivouplait ??

C'est pénible de buter sur des bétises comme cela :cry:
Merci d'avance :wink:


jeromax
WRInaute accro
WRInaute accro
 
Messages: 1087
Inscription: Mer Nov 12, 2003 17:48

Message le Ven Nov 05, 2004 9:19

l'action onChange dans ton select doit pouvoir t'aider.

Code: Tout sélectionner
<script>
function aze(){
// le code qui va chercher la valeur du select et qui rafraichit la page
}
</script>
<select on change="javascript:aze();">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>

Vespa
WRInaute impliqué
WRInaute impliqué
 
Messages: 341
Inscription: Lun Nov 17, 2003 9:41

Message le Ven Nov 05, 2004 10:09

Ok merci je crois que oui cela va bien m'aider..

J'ai une deuxieme petite question ...

Ce formulaire peut être appele sur plusieurs page differentes alors j'ai trouvé sur le net

Code: Tout sélectionner
<a href="javascript:location.reload()">recharger</a>


Es ce que je peux passer dedans mes variables de mon formulaire php

De manière à ce quand la page s'actualisera je puisse les récuperer ?

Merci bcp en tout cas :wink:


jeromax
WRInaute accro
WRInaute accro
 
Messages: 1087
Inscription: Mer Nov 12, 2003 17:48

Message le Ven Nov 05, 2004 10:14

oui mais pas de cette façon.
Le reload recharge exactement la même page.

Code: Tout sélectionner
<script>
function aze(){
// le code qui va chercher la valeur du select et qui rafraichit la page
}
</script>
<a href="javascript:aze();">Recharger</a>

yanhl
WRInaute passionné
WRInaute passionné
 
Messages: 793
Inscription: Jeu Déc 04, 2003 12:11

Message le Ven Nov 05, 2004 11:47

ouhlàlà !
Vespa, sois CLAIR !

Ce formulaire peut être appele sur plusieurs page differentes alors j'ai trouvé sur le net :
<a href="javascript:location.reload()">recharger</a>
Es ce que je peux passer dedans mes variables de mon formulaire php
De manière à ce quand la page s'actualisera je puisse les récuperer ?


Ca ne veut rien dire !
Tu veux faire quoi au juste ?

Jeromax :
<select on change="javascript:aze();">

Attention, les débutants ont besoin de code fonctionnel qui leur apprenne à se structurer.
Il faut aussi prévenir : si tu fais un changement de page avec une select en milieu de formulaire, les données entrées dans les champs avant ta select seront perdues.

Donc on reprend :

<script type="text/javascript">
function changeRegion(codeRegion){
alert(codeRegion); // a remplacer par le code de redirection
}
</script>
(...)
<form name="inscription">
(...)
<select name="region" onchange="changeRegion(this[this.selectedIndex].value);">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
(...)
</form>


Edit : est-il besoin de rappeller que le javascript doit être doublé d'un code coté serveur si on n'a pas la garantie que les visiteurs auront javascript activé ?

e-passeport
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 144
Inscription: Ven Juin 25, 2004 15:51

Message le Ven Nov 05, 2004 11:55

ajoute ca à tes favoris : www.editeurjavascript.com :) ca aide toujours quand on est en manquye d'inspiration....


olivieri
WRInaute passionné
WRInaute passionné
 
Messages: 889
Inscription: Lun Fév 03, 2003 17:30

Message le Ven Nov 05, 2004 11:57

Si tu veux prendre en compte des éléments saisis dans le même formulaire, il faut faire une soumission du formulaire dans la fonction appelée.

Par exemple

<script type="text/javascript">
function changeRegion(codeRegion){

document.inscription.submit();

}
</script>
(...)
<form name="inscription">
(...)
<select name="region" onchange="changeRegion(this[this.selectedIndex].value);">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
(...)
</form>

yanhl
WRInaute passionné
WRInaute passionné
 
Messages: 793
Inscription: Jeu Déc 04, 2003 12:11

Message le Ven Nov 05, 2004 12:09

olivieri > auquel cas on peut faire le submit directement dans le onchange ;-)
Et dans ce cas, il faut distinguer coté serveur si le formulaire a été soumis par un bouton "Envoyer" ou non pour éviter d'afficher d'éventuels messages d'erreur indiquant les champs non remplis.

En fait, tant qu'on n'a pas le cas complet, on ne peut pas trop aider...


yannouk
WRInaute accro
WRInaute accro
 
Messages: 2138
Inscription: Sam Oct 11, 2003 12:35

Message le Ven Nov 05, 2004 12:15

Vespa, je pense qu'il y a plus simpple pour actualiser la page avec le select.

<select onChange="javascript:location.reload()">

pour la deuxieme question, si les variables figurent dans ta page, elles y seront toujours apres actualisation.

yanhl
WRInaute passionné
WRInaute passionné
 
Messages: 793
Inscription: Jeu Déc 04, 2003 12:11

Message le Ven Nov 05, 2004 14:27

<select onChange="document.location.reload()">

"javascript:" c'est pour les href des liens, normalement (et encore, c'est crado).

Vespa
WRInaute impliqué
WRInaute impliqué
 
Messages: 341
Inscription: Lun Nov 17, 2003 9:41

Message le Sam Nov 06, 2004 11:31

yanhl a écrit:En fait, tant qu'on n'a pas le cas complet, on ne peut pas trop aider...


Merci à tous pour votre aide.
Je me suis très mal exprimé et m'en excuse.

Voici mon cas complet.
J'ai une fonction "detailsearch()"
Cette fonction est un formulaire de recherche :
Dans ce formulaire il y a plusieurs critères par exemple :

Code: Tout sélectionner
."<b>"._DEGREE."</b></td><td>"
           ."<select name="degrees">";
           for($i=1;$i<count(${$currentlang."_degreesearch"});$i++)
           {
              print "<option value="$i">{${$currentlang."_degreesearch"}[$i]}";
              }
       echo "</select>


Un des critères me pose soucis :
"Le pays".

Les utilisateurs dans ce formulaire pourront choisir le le pays.

Lorsqu'ils auront choisis le pays il faut que je recharge la page car en fonction de leur choix de pays j'affiches un select contenant les régions.

Bien sur lorsque la page se rechargeras lorsqu'ils auront selectionné un pays j'aimerais ne pas leur faire re-saisir les critères de ce formulaires qu'ils ont déja saisis.

J'espere que c'est un peu plus clair ?

Chrispp
Nouveau WRInaute
 
Messages: 1
Inscription: Mer Juin 01, 2005 15:39

Le submit dans le onChange ne résoud pas tout

Message le Mer Juin 01, 2005 15:45

Salut,

je m'explique :

supposons que tu veuilles soumettre le formulaire à une page donnée "traitement.php".
Si tu veux réactualiser la page depuis le SELECT tu veux donc adresser le submit à la page elle même "formulaire.php".

Pour cela tu utilise une fonction "javascript:changement" et dans le code tu mets par exemple :
function changement()
{
// On s'assure de passer en post
document.forms["monform"].method="post";
// On s'assure de la destination
document.forms["monform"].action="traitement.php";
// On soumet le formulaire
document.forms["monform"].submit();
}

si je me trompe pas ça marche.

Cordialement.
Chrispp


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités