【发布时间】:2015-04-10 08:49:03
【问题描述】:
我目前有一个动态生成的checkbox,点击它会创建一个表格。可以在我的checkbox 上选择多个选项,并将其存储在一个数组中。我有一个用于存储不同选择的循环,例如第一个、第二个和第三个选中的选择。
复选框
- option_one
- option_two
- options_three
我面临的问题是,如果我按升序选择选项,如 1>2>3,则表格会正确生成:
- Table_One
- Table_two
- Table_Three
但是,如果我按降序选择,或者将其混淆,即使这不是真的,option_one 总是最终作为第一个选择传递。
我的代码:
$(document).on("change", ".tbl_list", function () {
var tbls = [];
$("input:checkbox[name='tbl[]']:checked").each(function () {
tbls.push($(this).val());
var tbl2Name = " ";
var tbl3Name = " ";
var tblName = " ";
for (i = 0; i < tbls.length; i++) {
if (i === 0) {
tblName = tbls[i];
}
if (i == 1) {
tbl2Name = tbls[i];
}
if (i == 2) {
tbl3Name = tbls[i];
}
}
$("#table").html(tblName);
其中tbl_list 是checkbox 类名,tbl[] 是名称。那么为什么tblName 总是假设复选框列表中第一个对象的值呢?
【问题讨论】:
-
能否包含一些 html 或 jsfiddle。
-
您将其设置为保存第一个表的变量。 ` $("#table").html(tblName);`
标签: javascript jquery arrays loops checkbox