验证输入文本长度是否大于0并且在jQuery中也是数字

时间:2014-12-15 21:36:13

标签: jquery

我似乎无法弄清楚为什么以下代码无效:

  if ($('#sets').val().length  >  0  &&
      $.isNumeric(('#sets').val())   &&
      $('#reps').val().length  >  0  &&
      $.isNumeric(('#reps').val())   ){
    $("#exercises_submit").prop("disabled", false);
  }
  else {
    $("#exercises_submit").prop("disabled", true);
  }

在添加.isNumeric验证之前(当它只是检查长度时)它工作正常但我也想它验证用户也输入整数。

1 个答案:

答案 0 :(得分:1)

除了遗漏$错误之外,您可以真正清理代码,使其更具说明性和直观性。考虑一下:

var sets = $('#sets').val(),
    reps = $('#reps').val();

function numHasValue (num) {
    return num && $.isNumeric(num) 
} 

$("#exercises_submit").prop("disabled", (numHasValue(sets) && numHasValue(reps)) );