仅数字字段中允许使用符号吗?

发布于 2024-12-03 19:20:46 字数 557 浏览 0 评论 0原文

我正在使用低音阻抗形式验证。我有几个仅需要数字的字段,但不允许使用 $、(、)、-、* 等符号,并且我需要这些字段来表示价格和电话号码等字段。有人知道解决这个问题的方法或插件或其他东西吗?

更新

基本上,我需要一个函数来表示“不允许使用文本”以及允许的符号和数字。

另一个更新

发现一个不允许单独使用文本的功能。但如果有符号,它也允许文本。有什么办法限制任何文本吗?

jQuery.validator.addMethod(
  "symbols",
  function(value,element){
    var hNum=/[^a-z\s-]/;
    var inp=jQuery.trim(element.value).toLowerCase();
    if(hNum.test(inp)) {    return true;
    }
    else return false;
    },
    "Number and symbols are only allowed."
  );

Im using the bassistance form validation. I have a couple of fields that require digits only, but that excludes symbols like $,(,),-,*, etc from being allowed and i need these for fields like prices and phone numbers. Anyone know a method or plugin or something to work around this?

UPDATE

Basically, i need a function that says "no text allowed" and allowed symbols and numbers.

Another update

Found a function that doesnt allow text alone. But if there are symbols, it allows text as well. Any way to restrict any text?

jQuery.validator.addMethod(
  "symbols",
  function(value,element){
    var hNum=/[^a-z\s-]/;
    var inp=jQuery.trim(element.value).toLowerCase();
    if(hNum.test(inp)) {    return true;
    }
    else return false;
    },
    "Number and symbols are only allowed."
  );

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

最佳男配角 2024-12-10 19:20:46

我为它写了一个小函数...

function is_digit(value) {

    return String(value).search(/^\s*\d+\s*$/) != -1;

}

当然,您可以根据需要调整它。 :)

编辑:

以下是其他有用的正则表达式:

  • 是整数:/^\s*(\+|-)?\d+\s*$/
  • 是十进制数:/^\s*(\+|-)?((\d+(\.\d+)?)|(\.\d+))\s*$/

I wrote a little function for it...

function is_digit(value) {

    return String(value).search(/^\s*\d+\s*$/) != -1;

}

You can adapt it as you wish, of course. :)

Edit:

Here are other useful reg-exes:

  • Is integer: /^\s*(\+|-)?\d+\s*$/?
  • Is decimal-number: /^\s*(\+|-)?((\d+(\.\d+)?)|(\.\d+))\s*$/?
九八野马 2024-12-10 19:20:46

根据他们的文档,已经有验证方法可以执行验证: 十进制数字数字电话号码

**编辑:在这种情况下,听起来您想创建自定义验证。有一种名为 addMethod 的方法,它通过调用添加自定义验证 - back 函数就像 daGrevis 创建的函数一样。

示例:

jQuery.validator.addMethod("isdigit", function(value, element) {
        return /[\d()-.\$]/.test(value); 
    }, "Numbers and symbols only allowed"
);

According to their documentation, there's already validation methods that can perform validation for: decimal numbers, digits and phone numbers

**EDIT: In that case it sounds like you want to create a custom validation. There is a method called addMethod which adds a custom validation with a call-back function like the one daGrevis created.

Example:

jQuery.validator.addMethod("isdigit", function(value, element) {
        return /[\d()-.\$]/.test(value); 
    }, "Numbers and symbols only allowed"
);
亽野灬性zι浪 2024-12-10 19:20:46

好吧,您可以尝试完全不同的验证方法。

我个人最喜欢的是使用 HTML5 的验证并使所有浏览器都支持/扩展其功能。

http://ericleads.com/h5validate/

Well, you might try a different approach to validation entirely.

My personal favorite is to use HTML5's validation and make all browsers jive/extend its functionality.

http://ericleads.com/h5validate/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文