Case à cocher avec javascript

Nouveau WRInaute
Bonjour,
Il s'agit probablement d'une erreur moulte fois rencontrée mais je ne trouve pas la solution.
Pourquoi le script simple suivant ne fonctionne pas ?
Que ma case soit cochée ou non, seul le message demandant de la cocher s'affiche :(
/**********************/
<html>
<head>
<script type="text/javascript" src="Scripts/jquery-1.7.2.js" charset="UTF-8"></script>
<script type="text/javascript">
function CheckValid() {
if (document.getElementById('CaseValid').checked == 'checked') {
alert ("Validation possible.")
} else {
alert ("Cocher la case avant de valider.")
}
}
</script>
</head>
<body>
<form method="POST" name='FormVal' id='FormVal' action="">
<input type="checkbox" id="CaseValid" name="CaseValid" />
<a href='#'>
<img src='Images/Btn-VALIDER.png' id="BtnVal" style='cursor: pointer; border: none;' onClick="CheckValid();">
</a>
</form>
</body>
</html>
/********************************************/
D'avance merci de votre aide...
 
WRInaute passionné
Remplace par ceci :
Code:
if (document.getElementById('CaseValid').checked == true)
Le "checked" est peut-être spécifique au Jquery.
 
Nouveau WRInaute
Bonjour,
Merci de ta réponse.
Il ne s'agit pas d'une spécificité de Jquery mais juste de la mauvaise interprétation de ma condition.
La bonne syntaxe étant :
... if (document.getElementById('CaseValid').checked) ...
Cordialement,
Dg_Dev
 
WRInaute accro
Pourquoi faire un document.getElementById('CaseValid') alors que jQuery est chargé:
=> $('#CaseValid')...
 
Nouveau WRInaute
Bonsoir,
Très juste... mais au démarrage je ne l'avais pas chargé et ton observation est pertinente, j'ai d'ailleurs suivi cette idée pour éclaircir mon code depuis.
Merci de ta réponse...
Cordialement.
 
WRInaute accro
dg_dev a dit:
La bonne syntaxe étant :
... if (document.getElementById('CaseValid').checked)
ce qui est la même chose que :
if (document.getElementById('CaseValid').checked == true)
l'égalité a "vrai" étant superflue vue que l'expression est booléenne. Bref la réponse de Axiso est juste même si elle est "plus lourde".
 
Discussions similaires
Haut