1. #1
    Membre habitué
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    octobre 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : octobre 2005
    Messages : 212
    Points : 133
    Points
    133

    Par défaut Récupérer la valeur d'un champ dans le même formulaire JSP

    Bonjour à tout le monde,

    Depuis trois jours, je suis bloqué sur un problème auquel je vous demande une aide.

    Je veux récupérer la valeur d'une liste <SELECT> afin de l'utiliser dans une fonction comme paramètre.
    J'ai tenté avec JavaScript sans succès.

    Je vous donne ici une partie de mon code :
    Ici la liste dont je veux récupérer la valeur choisie.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <form method="post" action="choixfournisseur" id="choixfrs">
    	<fieldset>
    		<legend>Choix des fournisseurs</legend>
    		<label>Domaine : </label>
    		<select name=iddomaine">
    			<%
                            while(rsdom.next()){%>
    				<option value="<%= rsdom.getString(1) %>"><%= rsdom.getString(2) %></option>
    			<%}     %>
    		</select>
    		<input type="button" onClick="aller();" />
    	</fieldset>
    	</form>
    Ici la méthode dans laquelle je veux utiliser la valeur obtenue.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <label>Fournisseur : </label>
    		<select name=idfournisseur" id="listefrs">
    			<%
                            String iddomaine="javascript:aller()";
                            ResultSet rsfrs=null;
                            rsfrs=frs.rechercherDomaine(iddomaine);
                            while(rsfrs.next()){%>
    				<option value="<%= rsfrs.getString(1) %>"><%= rsfrs.getString(2) %></option>
    			<%}     %>
    		</select>
    Voici mon code JavaScript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <body>
    	<script type="text/javascript">
    		function aller()
    			{
    			var valeur = document.forms['choixfrs'].elements['iddomaine'].value; // Contient la valeur de l'<input />
    			//document.location.href = 'page.php?store='+valeur;
    			}
    	</script>
    ......
    .......
    ......

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java/Eclipse RCP
    Inscrit en
    septembre 2009
    Messages
    10 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java/Eclipse RCP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2009
    Messages : 10 419
    Points : 24 869
    Points
    24 869
    Billets dans le blog
    2

    Par défaut

    Salut,

    Le code Java des scriptlets s'exécutent dans le serveur, alors que le JavaScript s'exécute dans le navigateur, côté client donc. Donc tu ne peux pas utiliser le résultat d'une fonction JavaScript dans une scriptlet.

    Si tu veux pouvoir rendre dépendant le contenu d'une combo de la sélection dans une autre combo (ce que tu sembles vouloir faire), sans avoir à recharger la page (ce qui est nécessaire pour exécuter le code d'une scriptlet, puisque seul le serveur le peut) il te faut passer par de l'ajax : lors de la sélection dans la première combo (récupérable par évènement), tu get ou post une requête qui retourne les valeurs de l'autre combo (par exemple en JSon pour faciliter le traitement en JavaScript), que tu injecteras dans le tag select par du JavaScript. Pour faire ça plus simplement, utilise une bibliothèque comme JQuery.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre habitué
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    octobre 2005
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : octobre 2005
    Messages : 212
    Points : 133
    Points
    133

    Par défaut

    Merci beaucoup tout est compris.
    Je vais alors utiliser un autre formulaire pour récupérer la valeur, car je suis plus habitué aux formulaires JSP qu'à l'ajax.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2000] Récupérer la valeur d'un champs dans une liste ou texte
    Par falco- dans le forum VBA Access
    Réponses: 2
    Dernier message: 29/05/2009, 16h03
  2. Récupérer la valeur d'un champ dans forms
    Par maserati dans le forum Forms
    Réponses: 5
    Dernier message: 18/12/2008, 17h48
  3. Réponses: 9
    Dernier message: 14/05/2007, 17h57
  4. Récupérer la valeur d'un champ dans une requête
    Par romaintaz dans le forum JDBC
    Réponses: 7
    Dernier message: 18/08/2006, 10h13
  5. récupérer la valeur du 2ème champ dans un DBLookUpListBox
    Par jakouz dans le forum Bases de données
    Réponses: 3
    Dernier message: 20/07/2004, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo