如果选中jquery,请取消选中复选框

时间:2015-09-11 21:19:56

标签: javascript jquery html checkbox

我连续有3个复选框,我找到的代码很棒

$('input:checkbox').click(function () {
    $(this).closest('tr').find('input:checkbox').prop('checked', false);
    $(this).prop('checked', true);
});

但是,我有业务要求,如果有人点击已经检查过的复选框,我必须取消选中该业务要求。是的我明白单选按钮通常用于“只允许选择1项”,但即使是单选按钮也不能点击“取消选择”

复选框更自然,能够取消选择但是我的功能我尝试取消选择,如果已经选择并单击,它总是转到else语句

$('input:checkbox').click(function () {
    //alert('c');
  $(this).closest('tr').find('input:checkbox').prop('checked', false);

  if ($(this).checked)
  {
      alert('f');
      $(this).prop('checked', false);
  }
  else {
      alert('t');
      $(this).prop('checked', true);
  }

});

摘要

有3个复选框,目前我的功能只允许其中1个复选框。但是现在我需要能够点击当前选中的复选框并取消选中它

enter image description here

1 个答案:

答案 0 :(得分:4)

在该行的复选框上设置checked = false时,只需省略单击的复选框,这样它就会像常规复选框一样,例如:

$(this).closest('tr').find('input:checkbox').not(this).prop('checked', false);

Here's a fiddle