jquery validator - 是否可以将文本设置为未验证的 html 标签?
我正在使用 jquery 验证器来验证表单中的字段:
$.validator.addMethod('positiveNumber',
function (value) {
return Number(value) > 0;
}, 'L\'année ne peut pas être négative.');
$('#leapyear').validate({
errorPlacement: function(error, element){
error.appendTo(element.parent("td").next('td'));
}
});
表单如下所示:
<form id="leapyear" name="leapyear" action="Calculateur-Dates.html" method="post">
<table style="padding-left: 70px; width: 100%">
<colgroup>
<col width="25%">
<col width="15%">
<col width="20%">
<col width="40%">
</colgroup>
<tr>
<td class="calc_label">Year to be checked</td>
<td>
<input class="calc_input required positiveNumber" size="10" type="text" value = "2012" name="leap_year" id="leap_year" /></td>
<td class="validatorErrMsg"></td>
<td id="checkResult" class="calc_resMsg green">2012 is a leap year</td>
</tr>
<tr>
<td>
</td>
<td>
<center><button style="padding-left: 10px" id="leapYearBtn" name="submit" class="lnk_button" value="vérifier">vérifier</button></center>
</td>
<td colspan="2">
</td>
</tr>
</table>
</form>
检查工作正常,但是我还希望脚本在引发错误时从 td#checkResult 中删除文本。我不确定这是否可能,如果可以,如何进行。有办法做到这一点吗?
提前致谢
I'm using jquery validator to validate a field in my form:
$.validator.addMethod('positiveNumber',
function (value) {
return Number(value) > 0;
}, 'L\'année ne peut pas être négative.');
$('#leapyear').validate({
errorPlacement: function(error, element){
error.appendTo(element.parent("td").next('td'));
}
});
The form looks like this:
<form id="leapyear" name="leapyear" action="Calculateur-Dates.html" method="post">
<table style="padding-left: 70px; width: 100%">
<colgroup>
<col width="25%">
<col width="15%">
<col width="20%">
<col width="40%">
</colgroup>
<tr>
<td class="calc_label">Year to be checked</td>
<td>
<input class="calc_input required positiveNumber" size="10" type="text" value = "2012" name="leap_year" id="leap_year" /></td>
<td class="validatorErrMsg"></td>
<td id="checkResult" class="calc_resMsg green">2012 is a leap year</td>
</tr>
<tr>
<td>
</td>
<td>
<center><button style="padding-left: 10px" id="leapYearBtn" name="submit" class="lnk_button" value="vérifier">vérifier</button></center>
</td>
<td colspan="2">
</td>
</tr>
</table>
</form>
The check works fine, however I would also like the script to erase text from td#checkResult when raising an error. I am not sure if that is possible and, if so, how to proceed. Is there a way to do this ?
Thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
你应该能够做到这一点
you should be able to just do this
感谢 Mark 的代码行,我考虑从不同的角度看待问题,并为此添加了一个单独的 jQuery 函数:
它完成了我想要做的事情。
Thanks to the code line from Mark, I thought about looking at the problem from a different angle and added a separate jQuery function for this:
which does what I intended it to do.
尝试使用invalidHandler,使用validator.numberOfInvalids()获取数字,如果大于0,则清除$('#checkResult').html('');
Try using the invalidHandler, get the number by using validator.numberOfInvalids(), if greater then 0, clear $('#checkResult').html('');