允许负十进制数

时间:2015-04-20 11:07:00

标签: javascript jquery

我有一个验证函数,只允许2个小数位,不超过那个。但是目前它不接受负数。下面是我的代码。如何允许负数和正数只有最多2位小数?

  function twodecimalplace(e) {
    var val = this.value;
    var re = /^([0-9]+[\.]?[0-9]?[0-9]?|[0-9]+)$/g;
    var re1 = /^([0-9]+[\.]?[0-9]?[0-9]?|[0-9]+)/g;
    if (re.test(val)) {
        //do something here

    } else {
        val = re1.exec(val);
        if (val) {
            this.value = val[0];
        } else {
            this.value = "";
        }
    }
 }

1 个答案:

答案 0 :(得分:0)

此正则表达式也匹配负数:

/^-?\d+(\.\d{0,2})?$/
  • -?匹配" - "或者没有(对于正数和负数)
  • \d+一个或多个数字
  • (\.\d{0,2})?匹配一个点"。"加零到两位数或完全没有(允许小数)