将复选框设置为使用jQuery选中
Setting checkbox as checked with jQuery
我有两个输入复选框,我想用jQuery:选中/取消选中它们
<input type="checkbox" name="user1" value="1" id="u1" onclick="loadUserCalendar(1)">
<input type="checkbox" name="user2" value="2" id="u2" onclick="loadUserCalendar(2)">
JavaScript代码:
var list = new cookieList("calendar_users");
var users = list.items();
for (var i = 0; i < users.length; i++) {
$('input[name="user' + users[i].substr(1,1) + '"]').attr('checked', true);
console.log('substring: ' + users[i].substr(1,1));
console.log('enabling user ' + users[i]);
}
var users
包含以下值:u1,u2
。为了只获取用户ID,我执行了一个子字符串,它为我提供了正确的数字,正如您在控制台输出中看到的那样。
控制台输出:
substring: 1
enabling user u1
substring: 2
enabling user u2
我不知道为什么在代码运行时没有选中复选框。我在这里做错了什么?
编辑:由于兼容性原因,我使用jQuery 1.4.4,这就是我使用.attr()
内联事件处理程序(onclick="loadUserCalendar(1)"
)不是jQuery方式。你的html中不应该有。去掉它们并添加到您的jquery中:
$(function() {
$('form').on('click',':checkbox', function() {
loadUserCalendar($(this).val());
});
});
但也许你想要的是:
$(function() {
$('form').on('click',':checkbox', function() {
$('form :checkbox').attr('checked','checked');
});
});
jquery 1.古代版本:
$(function() {
$('input[type=checkbox]').live('click', function() {
// do things
});
});
您使用的是什么版本的jQuery?
你必须尝试这样的东西:
$('input[name="user' + users[i].substr(1,1) + '"]').attr('checked', 'checked');
或
$('input[name="user' + users[i].substr(1,1) + '"]').prop('checked', 'checked');
第二个是jQuery 1.6+
当您想要检查某个东西时,您必须执行以下操作:
$('.myCheckbox').attr('checked','checked');
如果您已经动态创建了复选框,请在方法上使用jQuery,因为简单的函数将无法访问这些元素。
$('input[type=checkbox]').each(function(index, box) {
$(box).attr('checked', $.inArray($(box).attr("id"), users) != -1);
});
相关文章:
- 使用jquery选中/取消选中单个复选框
- jquery选中并取消选中所有操作
- 如何通过jQuery选中所有复选框并在单击一个复选框时取消选择
- 使用 JQuery 选中随机复选框
- 如何使用 JQuery 1.3.2 选中复选框
- 使用 Jquery 选中基于 Div ID 和类的所有复选框
- 使用 Javascript 或 jQuery 选中所有复选框
- jQuery选中后检查其他选择元素
- 选中复选框是否使用jquery选中
- Jquery选中所有复选框
- Laravel&jQuery选中所有复选框
- 如何使用javascript/jQuery选中/取消选中HTML CheckBoxFor
- 使用Jquery选中复选框时,更改复选框的背景色
- Jquery - 选中复选框时未启用按钮
- 当满足条件时,用jQuery选中一个框
- 使用 Jquery 选中/取消选中多个复选框
- 使用 jQuery 选中嵌套复选框
- 使用 Jquery 选中单选按钮和选定的下拉值
- 复选框打开选中已更改通过 JQuery 选中复选框时不触发
- 使用 jQuery 选中单选按钮不会触发收音机的 onclick 事件