| |
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
Meeuuuhhh WRInaute accro

Inscrit le: 08 Jan 2007 Messages: 1383 Localisation: Au meilleur endroit
|
Posté le : Mar Jan 16, 2007 17:21 Sujet du message: Afficher un message d'alerte dès la sixième case |
|
|
Bonjour,
Le code ci-dessous permet d'afficher un message d'alerte si le client clique plus de 5 cases :
| Code: |
<script type="text/javascript">
<!--
var numCheck = 0;
var checkMax = 5;
function testCheck(obj)
{
if (obj.checked==true)
{
numCheck++;
if (numCheck>checkMax)
{
alert("Vous pouvez indiquer jusqu'à 5 spécialités.");
obj.checked = false;
numCheck--;
}
}
else
numCheck--;
document.getElementById("idOut").innerHTML = numCheck +" cases cochées";
}
//-->
</script>
dans le form :
<input type="checkbox" name="specialite" value="1" id="1" onclick="testCheck(this)"';>
|
Le problème c'est que si j'affiche ensuite les 5 cases cochées, après avoir récupéré les avoir id depuis la BD, alors le client peut de nouveau en cocher 5, ce qui peut nous en faire jusqu'à 10.
Donc au premier affichage, le gars peut cliquer 5 cases maxi, ça c'est bon.
Mais ensuite quand la liste s'affiche et que les 5 cases choisies auparavant sont maintenant cochées, alors là le gars doit avoir le message d'alerte dès la sixième case cochée.
J'ai besoin d'aide pour ça, parce que je suis (très) nul en javascript et on m'avait aidé à faire le script ci-dessus.
Merci d'avance.  |
|
| |
|
 |
biscuit WRInaute passionné

Inscrit le: 05 Juin 2006 Messages: 519 Localisation: Lausanne
|
Posté le : Mar Jan 16, 2007 17:47 Sujet du message: Afficher un message d'alerte dès la sixième case |
|
|
Salut,
Au lieu d'incrémenter ton compteur chaque fois que qq clique dessus, tu les comptes toutes tes checkbox chaque fois, avec qqch comme ça par exemple:
| Code: |
var chkbox_selectionnee = 0
for(i=0;i<document.getElementsByTagName("input").length;i++) {
if(document.getElementsByTagName("input")[i].type == "checkbox") {
if(document.getElementsByTagName("input")[i].checked == true) {
chkbox_selectionnee++;
}
}
}
|
|
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
|
|