Problème récupération valeur d'un menu déroulant [Résolu]

Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
- - Dernière réponse : massbbc
Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
- 4 déc. 2018 à 21:58
Bonjour,

Bonjour à tous,
Je suis débutant et je bosse sur un projet en php + Javascript
J'ai un menu déroulant(drop down) qui affiche bien la liste (Code + Libellé). Mon soucis est que j'ai un textField dans lequel je souhaite récupérer le prix lorsque l'utilisateur sélectionne une valeur du menu déroulant.

Ci-dessous ma table:

--
Afficher la suite 

Votre réponse

5 réponses

Messages postés
25629
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mai 2019
311
0
Merci
Bonjour
Et comment alimentes tu ta liste ?
Qu'as tu essayé ?
Commenter la réponse de jordane45
Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
0
Merci
requête
SELECT prestations.Code, prestations.Libelle, prestations.prix
FROM prestations


Voici comment alimentent:

<select name="CodePrestion_<?php echo $cnt1; ?>" id="Prestation" onchange="updateText('Prestation')">
      <option value=""><?php echo NXT_getResource("Select one..."); ?></option>
 <?php 
do {  
?>
       <option value="<?php echo $row_Rsprest1['Code']?>"<?php if (!(strcmp($row_Rsprest1['Code'], $row_rsoperationcaisse['CodePrestion']))) {echo "SELECTED";} ?>><?php echo $row_Rsprest1['Libelle']; echo $row_Rsprest1['prix']?></option>
                          <?php
} while ($row_Rsprest1 = mysql_fetch_assoc($Rsprest1));
  $rows = mysql_num_rows($Rsprest1);
  if($rows > 0) {
      mysql_data_seek($Rsprest1, 0);
   $row_Rsprest1 = mysql_fetch_assoc($Rsprest1);
  }
?>
                        </select>


--
jordane45
Messages postés
25629
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mai 2019
311 -
Bon... passons sur le fait que ton code est codé à l'ancienne....
l'extension mysql_* est OBSOLETE.
Désormais il faut passer par PDO ou MYSQLI


Quoi qu'il en soit, je vois que tu as déjà plus ou moins commencé à coder la récupération de la valeur selectionnée...
onchange="updateText('Prestation')"

C'est donc dans ta fonction updateText que tu dois faire la mise à jour du champ en fonction du choix de l'utilisateur...

Donc je réitère ma précédente question.... qu'as tu commencé à coder (qu'as tu essayé ) ?
Commenter la réponse de massbbc
Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
0
Merci
J'ai utilisé cette fonction en javascript qui m'affiche bien le code(PP1 ou PP2) dans un champ textfield lorsque je sélectionne un enregistrement dans le menu. mais je souhaite plutôt recupérer le prix dans cet champ.
Voici mon code javascript + mon TextField
<script type="text/javascript">
function updateText(type) {
var id = type+'Text';
document.getElementById(id).value = document.getElementById(type).value;
}

</script>

<input type="text" name="MontantOperation_<?php echo $cnt1; ?>" id="PrestationText" value="<?php echo KT_escapeAttribute($row_rsoperationcaisse['MontantOperation']); ?>" size="7" />




--
jordane45
Messages postés
25629
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mai 2019
311 -
et bien... dans les "VALUE" de tes options, tu y places le prix au lieu du code....
massbbc
Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
> jordane45
Messages postés
25629
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
27 mai 2019
-
Merci !!!! J'y ai pensé mais en procédant ainsi, je ne pourrai pas sauvegarder le code dans le champ correspondant au menu.
J'espérais pouvoir trouvé un moyen de récupérer le code en fonction du code récupéré depuis le menu déroulant. Mais......
Commenter la réponse de massbbc
Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
0
Merci
Merci !!!! J'y ai pensé mais en procédant ainsi, je ne pourrai pas sauvegarder le code dans le champ correspondant au menu.
J'espérais pouvoir trouvé un moyen de récupérer le code en fonction du code récupéré depuis le menu déroulant. Mais......



--
Commenter la réponse de massbbc
Messages postés
124
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
26 mars 2019
0
Merci
Jai trouvé finalement une solution pour contourner en javascript !

<script type="text/javascript">
function updateText(type) {
var id = type+'Text';
document.getElementById(id).value = document.getElementById(type).value;
if (document.getElementById('PrestationText').value =='PP1)
{ document.getElementById('PrestationText').value=1000;
} else if (document.getElementById('PrestationText').value =='PP2')
{ document.getElementById('PrestationText').value = 3000 ;}

}

</script>


--
Commenter la réponse de massbbc