首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用java脚本验证jsp中的文本字段,只接受点和逗号作为特殊字符

如何使用java脚本验证jsp中的文本字段,只接受点和逗号作为特殊字符
EN

Stack Overflow用户
提问于 2014-01-09 07:12:20
回答 2查看 1.5K关注 0票数 0

我需要只允许数字,点和逗号在文本字段。如果用户输入其他特殊字符,则需要抛出警报。

请查阅以下条件:

  1. 文本字段应至少包含一个数字值。
  2. 文本字段不一定总是包含点和逗号。

谢谢你的帮助。

EN

回答 2

Stack Overflow用户

发布于 2014-01-09 07:39:57

以下是您的一个开始:http://jsfiddle.net/KLyy8/1/

除非您告诉我们确切的细节,否则我们将不知道如何编写正则表达式。听起来你想要有数千个分隔符和小数的数字。但每个人有多少人?上面的小提琴对像这样的数字有用..。

123,456.79

12,345.6

一千二百三十四点五六

等等。

代码语言:javascript
复制
validate=function(){
    var str = document.getElementById('test').value;
    var patt = new RegExp("^[0-9]{1,3}\,[0-9]{3}\.[0-9]{1,2}$");
    var res = patt.test(str);
    alert(res);
}
票数 1
EN

Stack Overflow用户

发布于 2014-01-09 07:21:07

如果该字段仅包含带有十进制位的数值(对于exmaple 3.141123589,81),则只能使用一种正则表达式:

代码语言:javascript
复制
function validateString(str){
    if(str.match(^[0-9\.,]+$)){
        return true;
    }else{
        return false;
    }

然而,如果你想精确的话,你可能会想要限制在一个点和逗号,如果我正确地理解你的情况。

它的Regex看起来像这样

代码语言:javascript
复制
^[0-9]+(\.|,){0,1}[0-9]+$

这意味着它以一个数字(^[0-9]+)开头,然后它可能包含0或1乘以一个逗号或点((\.|,){0,1}),然后再以一个数字([0-9]+$)结尾。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21013815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档