J'essaie de me familiariser avec les méthodes personnalisées de validation jQuery et semble être un peu confus. pourquoi this.optional (élément) dans ma méthode personnalisée renvoie toujours false?jQuery validation this.optional (element) toujours false
est ici un exemple de mon code:
<script type="text/javascript">
$(document).ready(function(){
$.validator.addMethod('customemethod', function(val, el){
return this.optional(el) || false;
}, 'custom method says its INVALID !');
$('#myform').validate({ignore: '*[ignore]'});
$('#validate').click(function(){
$('#result').text($('#myform').validate().form());
return false;
});
});
</script>
<form id="myform">
<div><input type="text" id="customfield" name="customfield" /></div>
<script type="text/javascript">
$(document).ready(function(){$('#customfield').rules('add', { required: true, customemethod: true }) });
</script>
<div><input type="text" id="customfield2" name="customfield2" /></div>
<script type="text/javascript">
$(document).ready(function(){$('#customfield2').rules('add', { required: false, customemethod: true }) });
</script>
<div id="result"></div>
<input id="validate" type="submit" />
</form>
en cas si l'élément est pas nécessaire et sa valeur n'est pas vide - méthode de validation est appelé et je dois revenir vrai dans ce cas. Mais this.optional (el) est toujours faux :(
Comment puis-je résoudre? Comment puis-je vérifier si l'élément est nécessaire ou non à l'intérieur méthode personnalisée? Merci.