0

大家好,我需要一个 if 和 else 语句来检查两个字段 min 和 max 是否是数字,这些数字可以是 0 或 12 等整数,也可以是 0.50 到 1,300.99 有谁知道如何检查数字我的代码是采用以下格式:

jQuery:

$(document).ready(function(e) {

    $('#price_range').click(function(e) {
        var price_min = $('#min').val();
        var price_max = $('#max').val();
        var error_msg = "";

        if(price_min.macth(.../) && price_max.match(.../)) {
            error_msg = "Please enter a valid number."
        }else if(price_min > price_max) {
            error_msg = "Min is greater than max."
        }
    }
4

2 回答 2

1

我认为您不需要正则表达式来进行号码检查。您可以将结果与初始值parseFloat进行松散比较。

function isNumber(number) {
  var i;
  return (!isNaN(i = parseFloat(number)) && number == i);
}
于 2013-04-30T04:14:18.403 回答
0
var data = [
  "hello.world",
  "33",
  "25.",
  "2.345",
  "h.50",
  ".50",
];


var regex = /^(?:\d+)?(?:\.)?(?:\d+)?$/;

for (var i=0; i<data.length; ++i) {
  if (data[i].match(regex)) {
    console.log(data[i] + " is a number!");
  }
  else {
    console.log(data[i] + ": NOT");
  }
}

    --output:--
    hello.world: NOT
    33 is a number!
    25. is a number!
    2.345 is a number!
    h.50: NOT
    .50 is a number!
于 2013-04-30T04:58:34.037 回答