Liste deroulantes

ouzb Messages postés 63 Date d'inscription mercredi 20 septembre 2006 Statut Membre Dernière intervention 17 juillet 2012 - 25 août 2009 à 13:20
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 - 25 août 2009 à 13:57
Bonjour a tous,
Je viens solliciter votre aide.
J'ai un problème avec mes listes déroulantes. Je m'explique, j'ai une formulaire de réservation avec un tableau dont la 1ére colonne contient le nom des produit et le second le nombre produit qu'on pourra choisir.
Je veux contrôler que l'utilisateur choisit au moins un produit pourvoir valider sa réservation.
Je l'ai fais en PHP çà marche bien. Mais je veux le faire en javascript.
J'ai crée une fonction mais ne marche pas.
Voici mon code :

function testFrm(nb)
{
//s representant le nombre total de produit
var s=document.frm.produit.value;
var res = false;
var nombre=document.getElementsByName("nbpassager[]").length;
var nbre;
//alert(nombre);
nbre =document.getElementById("nbpassager[]").options[document.getElementById("nbpassager[]").selectedIndex].value;

//document.getElementById("selectionNb").options[document.getElementById("selectionNb").selectedIndex].value;
for(i=0;i<s;++i)
{
alert(nbre);
if(nbre>=1 )
return true;
}

if (!res)
{
alert("veuillez selectionner au moins un passager !");
return false;
else
{
return true;
}
}
Voici mon code html

<TR>
<td class="listlr" width="147" id={$incremente++}>{$smarty_liste_produits[idx].type_billet}</td>
<TD class="listr" id={$var++}>

<select name="nbpassager[]" id="nbpassager[]" onchange="ev(this.options[this.selectedIndex].label,{$var})">

<option label="0" value="0">0</option>
<option label={$smarty_liste_produits[idx].prix} value="1">1</option>
<option label={$smarty_liste_produits[idx].prix} value="2">2</option>
<option label={$smarty_liste_produits[idx].prix} value="3">3</option>
<option label={$smarty_liste_produits[idx].prix} value="4">4</option>
<option label={$smarty_liste_produits[idx].prix} value="5">5</option>
<option label={$smarty_liste_produits[idx].prix} value="6">6</option>
<option label={$smarty_liste_produits[idx].prix} value="7">7</option>
<option label={$smarty_liste_produits[idx].prix} value="8">8</option>
<option label={$smarty_liste_produits[idx].prix} value="9">9</option>
<option label={$smarty_liste_produits[idx].prix} value="10">10</option>
<option label={$smarty_liste_produits[idx].prix} value="11">11</option>
<option label={$smarty_liste_produits[idx].prix} value="12">12</option>
</select>


</TD>

Votre aide sera la bienvenue.

1 réponse

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
25 août 2009 à 13:57
Bonjour,
vous utilisez je ne sais quoi ( smarty ? )
et comment on devine ce que cela génère
comme html "normal" ?
ce qu'il nous faudrait, c'est un extrait
( le nécessaire, tout le nécessaire, mais rien
que le nécessaire ) du html résultant !
s'il ne s'agit que de contrôler si au
moins un produit est sélectionné, quel que
soit le html, c'est "assez simple", encore
faut-il qu'on le voit

c'est dans un select (??? )
tester document.name du formulaire.name du select.selectedIndex
s'il est >=0 c'est ok

et pourquoi ces [] dans les name ???
name="nbpassager[]"
il peut y en avoir plusieurs ?
qu'on doit gérer coté serveur ?
sinon, pas d'utilité !

Cordialement [mon Site] [M'écrire] Bul
0
Rejoignez-nous