我有一个复选框,单击它时,它会将表单提交给服务器以存储详细信息。一切正常,除了在提交表单后我更新了一个div来表示提交但是没有勾选复选框。页面当然没有刷新,当页面刷新时,它会被勾选。
我想我可以自己检查这个盒子,因为我正在使用jQuery,但我有很多这些复选框,每个都有一个动态名称,所以我不确定如何调用它们。我想的是:
$('input[name=("favourite" + id)]').attr('checked', true);
可能有效,但没有运气。如果我没有勾选勾选复选框上的功能,则复选框表现正常。
感谢任何有用的东西。
答案 0 :(得分:1)
你应该打破你的字符串,以便将id
变量的值引入你的选择器,你可以这样做:
$('input[name="favourite' + id + '"]').attr('checked', true);
答案 1 :(得分:1)
尝试
$('input[name=("favourite" + id)]').checked = true;
代替。
问题可能是您的浏览器不会自动将设置属性解释为更改DOM属性。这有点令人困惑,但在Firefox等浏览器上,HTML属性和DOM属性是分开存储的(大多数命名相同,但有例外 - 例如class
属性由{{1表示属性)。
更改属性会影响Elements的行为,而属性并不总是具有相同的效果 - 在某些浏览器上,它们仅在初始渲染过程中被解析。