选择/取消选择全部对单个记录不起作用
Select/DeSelect All doesnt work for single record
我有一个javascript如下:
if (document.forms[0].Check_All.value=="Select All") {
for (i = 0; i < chk.length; i++) {
chk[i].checked = true;
document.forms[0].Check_All.value = "DeSelect All";
}
} else {
for (i = 0; i < chk.length; i++) {
chk[i].checked = false;
document.forms[0].Check_All.value = "Select All";
}
}
用于选择和取消选择复选框。当chk.length == 2
及以上时工作良好。然而,当我只有一个记录chk.length
是undefined
,它不会工作。猜猜为什么?
这是因为当只有一个表单元素具有指定的名称时,您可以直接访问该元素,而有更多具有相同名称的元素时,您将获得一个集合。
在这种简单的情况下,你可以使用 来解决这个问题。if(chk.length == undefined) {
chk = new Array(chk);
}
如果它之前不是一个集合,之后chk
将是一个数组-其行为类似于一个集合,至少在你可以访问它的长度属性和访问它的(一个)元素与数字索引的方式。
您可以使用JQuery函数来选中所有的复选框
$("input :checkbox").each(function(){
$(this).prop('checked', true);
});
相关文章:
- 如果用户选择离开网页,如何删除记录
- 从数据库加载记录,不带提交按钮的下拉选择
- 子网格:限制用户仅选择一条记录
- 从Javascript记录数组中选择随机项,并将其转换为数组
- 根据用户在边栏中的选择获取记录
- 基于表单输入值,如何 2 生成选择 4 下拉菜单 w 数据库中的行/记录数据,该数据库将在选择时预填充表单
- 如何为下拉菜单生成选择,其中包含数据库中的行/记录数据,该数据库将在选择时预填充表单
- 默认情况下,从数据列表中选择第一条记录
- 如何生成下拉菜单选择以根据数据库中可用的行/记录表单数据填充表单
- 如何保存具有多个选择下拉列表的 html 表单的选择历史记录
- 角度拼接函数删除另一条记录而不是实际选择的记录
- Javascript/Ajax/Jquery 修改选择记录
- 打破记录中的数量(数字),并将其设置为数组以进行选项选择
- 在输入(文本框)字段中按下回车键时验证并提交表单,但在按下回车键后不选择历史记录
- 是否可以使用服务器返回的总记录和用户在Jquery DataTable中选择的记录数来设置页码
- 这是我的代码,我想添加日期选择器事件,它根据日期给出特定的记录
- 如何根据下拉选择框中的选择更新sql数据库中的特定记录
- 使用PHP从MySql数据库中选择两个日期之间的记录
- EXTJS 3.4如何在选择更改时获取记录数据视图
- 当我console.log用户的单选按钮选择时,记录的总是后面一个