我只有在网页加载后才使用Java的for循环创建多个复选框。
我想将所有复选框默认设置为true,我可以在控制台中执行此操作,但是当我将其放入脚本时,由于该函数可能在DOM元素加载之前就已加载,因此它不起作用。
我尝试了两种不同的方法,但似乎都没有用。在这两种情况下,它们仅适用于我键入的硬编码复选框(不适用于for循环/ DOM生成)。如果有人知道我能解决这个问题,我将不胜感激!
这是我的基本jQuery / JS代码。
$(document).ready(function() {
var setTrue = document.getElementsByTagName("input");
for (var i = 0; i < setTrue.length; i++) {
setTrue[i].checked = true;
};
});
$(window).on("load", function() {
var setTrue = document.getElementsByTagName("input");
for (var i = 0; i < setTrue.length; i++) {
setTrue[i].checked = true;
};
});
答案 0 :(得分:2)
您可以使用此示例将当前页面上所有复选框的属性设置为选中。
$(function(){
$('input:checkbox').prop('checked', true)
})
答案 1 :(得分:1)
看起来您从注释中找到了正确的方法,这是更改添加了复选框的javascript,以使其最初只是具有选中的属性。但是对于其他希望做类似事情的人,如果他们无法控制复选框,则您的jQuery函数可以工作,但可以更简单地做到这一点:
$(document).ready() {
$('input:checkbox').attr('checked', true)
}
jQuery已经为您完成了输入对象的循环操作(并且尝试将其添加到每个输入中,而不仅仅是复选框添加了“ checked”)。