J'ai ajouté une méthode sur jQuery validateur comme celui-civalidation jQuery méthode personnalisée ne fonctionne pas
$.validator.addMethod(
'myEqual',
function (value, element) {
return value == element.value; // this one here didn't work
},
'Please enter a greater year!'
);
$.metadata.setType("attr", "validate");
$("#educationForm").validate({
showErrors: function(errorMap, errorList) {
this.defaultShowErrors();
},
errorPlacement: function(error, element) {
error.appendTo(element.parent("td").next("td"));
},
/*success: function(label) {
label.text("ok!").addClass("success");
},*/
rules: {
txt_end: {
required: true,
myEqual: "#txt_begin"
}
},
submitHandler: function() {}
});
la forme ressemble à ceci
<div id="wrapper_form">
<form id="educationForm" name="educationForm" method="post" action="">
<table width="500" border="0">
<tr>
<td width="100">Period:</td>
<td width="200"><input type="text" name="txt_begin" id="txt_begin" size="8" maxlength="4" class="required year ui-widget-content ui-corner-all" /> to
<input type="text" name="txt_end" id="txt_end" size="8" maxlength="4" class="required year ui-widget-content ui-corner-all" /></td>
<td width="200"></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="btn_submit" id="btn_submit" value="Submit" class="ui-button ui-state-default ui-corner-all" />
<input type="button" name="btn_cancel" id="btn_cancel" value="Cancel" class="ui-button ui-state-default ui-corner-all" />
</td>
<td> </td>
</tr>
</table>
</form>
</div>
mais pourquoi la méthode personnalisée j'ai ajouté n'a pas travail?
return value == element.value; // this one here didn't work
il retourne toujours vrai pour toute valeur suis-je manque quelque chose ici? Je n'ai pas utilisé la méthode intégrée car plus tard dans la forme je devrais écrire une autre méthode pour vérifier supérieur ou égal et inférieur ou égal ("> =" et "< =") J'ai testé cette méthode avec supérieur ou égal et inférieur ou égal en remplaçant le "==" par "> =" ou par "< =" Cela ne fonctionnait pas non plus
merci, je vais essayer votre suggestion :) –
Je l'ai essayé, ne fonctionne toujours pas J'ai vérifié le contenu param était "txt_begin" et le contenu $ (param) .value était "undefined": D btw J'utilise Firefox 3.5.1 Y at-il un problème avec ce navigateur? n'a pas vérifié en utilisant un autre navigateur –
Désolé, j'ai eu une faute de frappe sur le code, vous pouvez vérifier un exemple de travail ici: http://jsbin.com/ecoko – CMS