检查以确保所有字段都填充Jquery

时间:2017-02-20 14:39:47

标签: javascript jquery validation input

我试图在jquery中为我的输入字段创建一个简单的验证器。 目前我得到以下内容:

function checkInputs(){
var isValid = true;
$('.input-required').each(function() {
     if($(this).val() === ''){
        isValid = false;
         return false;
     }        
 });
return isValid;
}

然后我有一个正确的按钮就是这样:

$('#confirm').click(function () { 
    alert(checkInputs());
});

但即使输入为空,这也总是返回true。 此后,如果填写了所有输入,我将进行操作,将启用一个按钮点击。

编辑它所以它现在有一个选择器,仍然总是如此。

提前致谢

5 个答案:

答案 0 :(得分:3)

尝试使用filter属性来获取具有required属性的输入。

$('input').filter('[required]')

添加了代码以检查输入是否已填满并启用或禁用button。请注意,如果我们使用它,$('#confirm').click(function());函数有很多点,因为只有在输入填充时才会启用此按钮。

function checkInputs() {
  var isValid = true;
  $('input').filter('[required]').each(function() {
    if ($(this).val() === '') {
      $('#confirm').prop('disabled', true)
      isValid = false;
      return false;
    }
  });
  if(isValid) {$('#confirm').prop('disabled', false)}
  return isValid;
}

$('#confirm').click(function() {
  alert(checkInputs());
});

//Enable or disable button based on if inputs are filled or not
$('input').filter('[required]').on('keyup',function() {
checkInputs()
})

checkInputs()
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input required>
  <input required>
  <input required>
  <button id="confirm">check</button>
</form>

答案 1 :(得分:0)

尝试以这种方式定位元素: $('input[required]')

这应该可以解决问题。

答案 2 :(得分:0)

您的选择器正在寻找显然不存在的tagName table_3

为班级

添加点前缀

还可以使用filter()来简化

<input-required></input-required>

注意:如果无线电或复选框属于具有该类的元素集合,则无法工作,如果是这种情况,则需要为类型添加条件

答案 3 :(得分:0)

如果为0,那么所有输入都填满,否则它将返回0意味着任何一个或多个是空输入。

 function checkInputs(){
  var flag = 0;
  $('input').each(function() {
       if($(this).val() == ''){
         return flag = 1;
       }
   });
  return flag;
  }
  $('#confirm').click(function () {
      alert(checkInputs());
  });

答案 4 :(得分:0)

你忘了把类符号放在jQuery中:

function checkInputs() {
    var isValid = true;
    $('.input-required').each(function() {
     if($(this).val() === ''){
        isValid = false;
         return false;
     }        
  });

  return isValid;
}

试试这个..