繁体   English   中英

基本表单验证:为什么不添加或删除我的班级?

[英]Basic form validation: why won't my class be added or removed?

我正在尝试默认情况下禁用按钮,并且仅当用户填写带有类标记的字段时,该按钮才变为活动状态。

这是jsFiddle: https ://jsfiddle.net/co3d5phy/2/

我的jQuery看起来像这样:

function checkForAnswers() {
  var count = $('.pdf-checklist-17012[value!=""]').length;
  var total = $('.pdf-checklist-17012').length;

  if (count == total) {
    $('.pdf-17012').removeClass('disabled');
    $('.pdf-17012').removeAttr('disabled');
  } else {
    $('.pdf-17012').addClass('disabled');
    $('.pdf-17012').attr('disabled', 'disabled');
  }
  console.log(count + '/' + total);
}

checkForAnswers();
$('.pdf-checklist-17012').on('keyup', checkForAnswers);

jsFiddle似乎无法正常工作,而且无论我完成了多少字段,当我查看它时,Chrome中的控制台实时记录为0/5 我想念什么?

您正在寻找不会改变的html属性值。 您可以使用以下方式解决此问题:

var count = $('.pdf-checklist-17012').filter(function(){
    return $(this).val() !== "";
}).length;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM