【问题标题】:jQuery - Unable to remove checked attribute from checkboxesjQuery - 无法从复选框中删除选中的属性
【发布时间】:2017-08-19 11:37:07
【问题描述】:

我生成了一个表单,其中包含对与我的数据库通信的 PHP 页面的 Ajax 请求的响应。

当我单击submit 按钮时,我会通过 jQuery 收集简单数组中不同表单输入(文本、复选框、文本区域...)的内容,以将它们发送回数据库。

现在我想在提交后重置form
即使使用我在 StackOverflow 和互联网上找到的所有方法,我也未能使用 myForm.reset() 清除所有内容(它什么也没做)。所以我决定自己编写清晰的流程。

主要问题:我收集选中复选框的值:

var complement0=[];
complement0.push($("input[name=foo]:checked").map(function() {
  return this.value;
}).get());

然后尝试取消选中复选框。以下是我尝试但没有成功的方法:

$("input[name=foo]:checked").each(function() {
  $(this).removeAttr('checked');
});

$("input[name=foo]:checked").map(function() {
  return this;
}).removeAttr('checked');

$("input[name=prsFmtLng]:checked").attr('checked',false);

$("input[name=prsFmtLng]:checked").removeAttr('checked');

因为当其他人谈论这个时看起来很简单:要么我不明白我在做什么,要么我只是错过了一些东西。

欢迎任何帮助。

答案:

    $("input[name=foo]:checked").map(function() {
        $(this).prop('checked',false);
    });

【问题讨论】:

    标签: jquery forms checkbox reset


    【解决方案1】:

    checked 是一个属性。

    使用:

    .prop('checked',false);
    

    ;)

    【讨论】:

    • 当你在这里回答时,我发现感谢:stackoverflow.com/questions/5874652/prop-vs-attr/… 无论如何谢谢 =)
    • 不得不等待 1 分钟才能接受。我编辑了我的问题以添加答案。我不应该删除它,因为我必须搜索一段时间才能找到那个简单的答案。我应该吗?
    • 您的选择!你认为你的问题可能会帮助未来的读者是问自己的问题。 ;)
    • 那我就不说了,因为许多其他与选中复选框相关的问题都没有谈到这个细节。再次感谢您。
    • 很高兴 ;)
    猜你喜欢
    • 2012-11-13
    • 2014-12-31
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 2011-04-05
    • 2020-07-28
    • 1970-01-01
    相关资源
    最近更新 更多