jQuery - 无法从复选框中删除已检查的属性

时间:2017-03-26 21:46:05

标签: jquery forms checkbox reset

我有一个表单,其中包含对与我的数据库通信的PHP页面的Ajax请求的答案。

当我点击submit按钮时,我通过jQuery收集简单数组中不同表单输入(text,checkbox,textarea,...)的内容,将它们发送回数据库。 / p>

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

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

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);
    });

1 个答案:

答案 0 :(得分:0)

checked是一个属性。

使用:

.prop('checked',false);