rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

Enregistrer la valeur d'une liste déroulante

rooloulou, le mercredi 6 février 2008 à 13:21:34
Bonjour,
voilà, j'essaye desesperement de passer la valeur selectionnée par l'utilisateur dans une variable que j'ai appelé valueSelect.
j'essaye ça:

<script language="JavaScript">
function setLine(value){
valueSelect = value;
}
</script>
<select name=line onchange="setLine(this.options[this.selectedIndex].value);">

et oooo drame cela ne marche pas....
merci infiniement de vos réponses,
éléonore.
Répondre à rooloulou  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Scalpweb, le mercredi 6 février 2008 à 13:28:39
Chez moi, ce code fonctionne :

<html>
<body>
 <script language="JavaScript">
var valueSelect;
function setLine(value){
valueSelect = value;
alert(valueSelect);
}
</script>
<select name=line onchange="setLine(this.options[this.selectedIndex].value);"> 
<option value="un">1</option>
<option value="deux">2</option>
</select>
</body>
</html>
Répondre à Scalpweb

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Christounet, le mercredi 6 février 2008 à 13:34:40
Bonjour,

Le code ci-dessous doit faire ce que tu veux:

<script language="JavaScript">
function setLine(value)
{
  valueSelect = value;
}
</script>

<body>
<select name=line onchange="setLine(this.options[this.selectedIndex].value);" size="1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</body>


A plus
Répondre à Christounet

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Scalpweb, le mercredi 6 février 2008 à 13:36:15
Ouai, le même que moi quoi :-p

Non mais je pense que son problème vient du fait que sa variable était déclarée à l'interieur de la fonction.

Elle était donc inutilisable une fois la fonction terminée.
Répondre à Scalpweb

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
rooloulou, le mercredi 6 février 2008 à 13:41:40
merci beaucoup pour vos réponses,
c'est vraie que l'on dirait que la valueSelect est bien affectée, mais pour une raison que je comprends pas ça ne s'applique pas dans ma liste liée. je vous montre:

<script language="JavaScript">
var valueSelect;
function setLine(value){
valueSelect = value;
alert(valueSelect);
}
</script>
<select name=line onchange="setLine(this.options[this.selectedIndex].value);">
<OPTION>--- Choose your line ---</OPTION>
<%
try{
conn = DriverManager.getConnection(url,username,password);
Statement stmt = conn.createStatement();
ResultSet rs1= stmt.executeQuery("select lineName from line ");
while (rs1.next()) {
%>

<option value="<%=rs1.getString("lineName")%>"><%=rs1.getString("lineName")%></option>
<%
}
rs1.close();
stmt.close();
}catch(Exception e){
System.out.println(e.getMessage());
}
%>
</select>

<br/>
the station:
<select name=station>

<%
PreparedStatement stmt = conn.prepareStatement("SELECT stationName FROM stationLine WHERE lineName LIKE" +"(?)");
stmt.setString(1,valueSelect);
ResultSet rs1= stmt.executeQuery();
while (rs1.next()) {
%>

<option value="<%=rs1.getString("stationName")%>"><%=rs1.getString("stationName")%></option>
<%
}
rs1.close();
stmt.close();
}catch(Exception e){
System.out.println(e.getMessage());
}
%>
</select>

..c'est pas très lisible je suis désolée, mais je sais pas comment mettre ça dans une boite déroulante comme vous faite habituellement...
si quelqu'un a une idée pourquoi la deuxième liste ne tiens pas compte de la nouvelle valeur de valueSelect..
merci beaucoup
Répondre à rooloulou

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Scalpweb, le mercredi 6 février 2008 à 13:44:32
Pourrais -tu nous mettre le code html généré au final ?
Répondre à Scalpweb

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
rooloulou, le mercredi 6 février 2008 à 13:48:45
heu...je sais pas faire je crois.
là c'est du jsp intégré dans du html...mais j'imagine que le principe doit etre le meme...
je comprend pas pourquoi valueSelect, que j'ai affecté au tout début de mon code ne se modifie pas quand
je selectionne une valeur dans la première liste..
merci de ta réponse,
eleonore
Répondre à rooloulou

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Christounet, le mercredi 6 février 2008 à 14:04:30
Bonjour,

Je pense que l'erreur ne vient pas de la valeur de valueSelect mais dans le code utilisé pour lire la base de données, je pense que le code devrait être:

PreparedStatement stmt = conn.prepareStatement("SELECT stationName FROM stationLine WHERE lineName LIKE" +"'(?)'");
stmt.setString(1,valueSelect);
ResultSet rs1= stmt.executeQuery();



Il faut, je crois mettre la valeur à testé pour un LIKE entre deux '

A plus
Répondre à Christounet

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
rooloulou, le mercredi 6 février 2008 à 14:08:43
en fait, jai initialisé au départ ma variable valueSelect par un
<% String valueSelect="central"; %>
je crois que le problème vient de là, comme si il y avait deux valueSelect distinctes, car quand je test dans
la deuxième liste déroulante en mettant
<OPTION><%=valueSelect%></OPTION>

la valueSelect reste toujours la valeur initial que j'avais mise, donc ne tiens pas compte de mes changements...
bizzard...
merci de ta réponse,
Répondre à rooloulou

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Scalpweb, le mercredi 6 février 2008 à 14:24:59
Ah non mais tu confonds tout !

Ta variable ValueSelect ASP n'ets pas du tout la même que ta variable Javascript !
Répondre à Scalpweb

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
rooloulou, le mercredi 6 février 2008 à 14:58:59
ok ok,
je comprend mieux merci,
mais alors,
comment passer la valeur de la variable javascript dans ma variable ASP...
Répondre à rooloulou

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 Scalpweb, le mercredi 6 février 2008 à 15:02:52
Tu remplaces la ligne :

var valueSelect;

par :


var valueSelect = <%=rs1.getString("lineName")%>;

Pour passer de l'ASP vers java.

Pour la contraire, il faut utiliser une variable d'URL.
PAr exemple, enfaisant :

http://www.test.com/index.asp?valueSelect=2

Tu pourras récupérer la variable dans ton code ASP.

Fais une recherche sur les variables GET et ASP.
Répondre à Scalpweb
Logiciels pertinents trouvés dans les téléchargements
Télécharger Ma Liste d'Achats  2.01Ma Liste d'Achats - Faire les courses est une tâche bien compliquée pour les non initiés. Ma liste d'achats est comme son nom l'indique, un...Catégorie: Environnement de travail
Licence: Freeware/gratuit
Télécharger ClearProg  1.5.0ClearProg - ClearProg est l'outil idéal pour la suppression de votre trace sur internet. Le programme efface les chemins que vous avez...Catégorie: Sécurité
Licence: Freeware/gratuit
Télécharger SpaceTime   1.0SpaceTime - Pour plus de fluidité et d'ergonomie dans vos recherches sur le web, en mode interactif, c'est encore mieux. Space Time est...Catégorie: Internet
Licence: Freeware/gratuit
Télécharger Radio FR Solo 2.1Radio FR Solo - Permet d'écouter les stations de radio à travers internet. Quel intérêt ? Et bien de pouvoir écouter des radios que vous...Catégorie: Podcasting/Streaming
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « enregistrer la valeur d'une liste déroulante »