限制用户选择的复选框数量
Limiting the number of checkboxes selected by user
我有一个页面。我有很多复选框。我希望用户在三个复选框中选择,但不超过三个,其中一个复选框的值为"不感兴趣",如果用户单击此复选框,则必须禁用所有其他复选框。如果我尝试了javascript。这就是我尝试的
function chkcontrol(j) {
var total = 0;
for (var i = 0; i < document.form1.user[portal_choice].length; i++) {
if (document.form1.user[portal_choice][i].checked) {
total = total + 1;
}
if (total > 3) {
alert("Please Select only three")
document.form1.user[portal_choice][j].checked = false;
return false;
}
}
}
我在portalchoice变量中出错。这是用数据库列名映射的,user是我的表名。帮助我做到这一点,并建议我禁用复选框时,用户点击"不干扰"。它不是轨道3.0
感谢朋友的考虑。。。。。。。。。
使用此语法document.form1.user[portal_choice]
,您告诉Javascript您想要名为"form1"的表单,然后从该表单中获取名为"user"的元素,并查看(Javascript)变量"portal_choice"中包含索引的元素。该变量未在函数中定义。
我不熟悉Ruby,但从一些快速阅读中可以看出,您可以直接在html中引用Ruby变量,但不能在Javascript中引用。我认为你必须用<%= %>
这样包装它:
document.form1.user[<%= portal_choice %>].length
但是,我不明白为什么要在这里使用Ruby变量。你只想遍历所有的复选框,对吧?我不认为复选框元素是二维数组,就像一样
document.form1.user[portal_choice][i]
我想你真的只想这么做:
function chkcontrol(j) {
var total = 0;
for (var i = 0; i < document.form1.user.length; i++) {
if (document.form1.user[i].checked) {
total = total + 1;
}
if (total > 3) {
alert("Please Select only three")
document.form1.user[j].checked = false;
return false;
}
}
}
检查此小提琴
相关文章:
- 通过复选框选择形成填充
- jQuery根据相关复选框选择求和单元格
- 根据用户复选框选择显示或隐藏下拉框
- 复选框选择组合
- 如何根据角度中的复选框选择过滤结果
- 根据复选框选择 jQuery 更新文本框
- jquery选择复选框选择的值
- 复选框选择/取消选择触发器第一次工作,但在随后的尝试中失败
- 如何发布单选和复选框选择?表单由php和js处理
- 使用querySelectorAll进行的复选框选择不起作用
- 具有延迟的多个复选框选择以检查其他复选框更改
- 显示 jQuery 复选框选择
- 复选框选择似乎彼此不一致
- 一个变量,多个复选框选择/取消选择 jQuery
- 使用 Json 数据源在数据表中实现复选框选择
- 使用 Javascript 更新复选框选择时的输入字段
- 将复选框选择保留在多页分页中
- 在复选框选择后验证输入类型文本
- 如何根据 Javascript 中的复选框选择打开引导模式窗口
- 如何检测和获取 asp.net 中的复选框/选择框(html 标记)值