【问题标题】:Changing check attribute of jquery dom items in a variable array更改变量数组中 jquery dom 项的检查属性
【发布时间】:2014-05-08 18:24:38
【问题描述】:

好的,所以我在弹出窗口中有一个复选框列表。我抓取了两个 jquery dom 元素列表,一个复选框列表和一个选中的复选框列表。这个想法是用户可以更改复选框,然后如果他们愿意,按取消按钮,它将恢复为原始状态。

我得到了两个列表...

var allDropDownCheckboxes = $(this).next().find(".dropDownCheckbox");
var selectedCheckboxes = $(this).next().find(".dropDownCheckbox:checked");

在按下取消按钮时,我将复选框恢复为原始状态...

allDropDownCheckboxes.attr('checked', false);
selectedCheckboxes.attr('checked', true);

它取消选中它们,但不检查最初再次选中的那些......

为什么?!

谢谢

【问题讨论】:

    标签: jquery list dom checkbox checked


    【解决方案1】:

    尝试使用 .prop() 而不是 .attr()

    allDropDownCheckboxes.prop('checked', false);
    selectedCheckboxes.prop('checked', true);
    

    【讨论】:

      【解决方案2】:

      尝试使用.prop()而不是.attr()来设置表单元素的checked状态,来自docs

      从 jQuery 1.6 开始,.attr() 方法返回未定义的属性 尚未设置。检索和更改 DOM 属性,例如 表单元素的选中、选择或禁用状态,使用 .prop() 方法。

      allDropDownCheckboxes.prop('checked', false);
      selectedCheckboxes.prop('checked', true);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-20
        • 1970-01-01
        • 1970-01-01
        • 2012-04-03
        • 2012-08-28
        • 2016-06-23
        相关资源
        最近更新 更多