gpt4 book ai didi

javascript - Jquery 自定义验证非数字

转载 作者:行者123 更新时间:2023-11-30 08:59:53 26 4
gpt4 key购买 nike

我正在尝试为 jquery 编写自定义验证函数。规则应该是该字段不能只是数字。我知道如何只写数字或只写字母,但我希望规则说明“12345”的值会失败,但“12345A”会被验证

这是我对非数字的看法

jQuery.validator.addMethod("nonNumeric", function(value, element) {
return this.optional(element) || !value.match(/[0-9]+/);
},"Only alphabatic characters allowed.");

但我无法弄清楚如何不只是数字。


工作脚本

这里有三个可能有用的规则,最后一个是回答这个问题的规则。

 jQuery.validator.addMethod("noSpace", function(value, element) { 
return value.indexOf(" ") < 0 && value != "";
}, "No spaces please");

jQuery.validator.addMethod("alpha", function(value, element) {

return this.optional(element) || /^[a-z]+$/i.test(value);
},"Letters only please.");

jQuery.validator.addMethod("nonNumeric", function(value, element) {
return this.optional(element) || isNaN(Number(value));
},"String cannot be numeric");

最佳答案

像这样使用 parseInt(如果操作数不是严格意义上的数字,则返回 NaN):

jQuery.validator.addMethod("nonNumeric", function(value, element) {
return this.optional(element) || !isNaN(parseInt(value));
},"Only alphabatic characters allowed.");

在这种情况下不要使用 != 否则你可能会得到 this unpleasant situation .


根据 Ken Browning 的评论,parseInt 在这里可能不合适。试试这个:

jQuery.validator.addMethod("nonNumeric", function(value, element) {
return this.optional(element) || !isNaN(Number(value));
},"Only alphabatic characters allowed.");

关于javascript - Jquery 自定义验证非数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10132908/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com