请参考我的小提琴here。我有一个包含动态行的表格,每个表格都包含一个复选框,其中包含变量ID id="monitor_'+rowID+'"
,其中rowID是一个全局变量,声明为在函数addText()
内部没有关键字var
。我试图使用.each(function(){});
来遍历行,但它似乎不工作。如何遍历几个变量ID?
我的意图是查看每行中的复选框是否被选中。如果是,将调用功能monitoring
。 下面是函数:
function monitoring() {
$('#test').append("checked");
fbType = $('td.nth(2)', $(this)).text();
fbNum = $('td.nth(3)', $(this)).text();
$('#test').append(fbType + fbNum);
$.post('/request', {
inputText: fbNum,
key_pressed: fbType.toString()
}).done(function (reply) {
if (reply == "on") {
$('#test').append("on ");
} else {
$('#test').append("off ");
}
});
}
您可以添加行,但是选择一个选项,并增加一个号码,然后按按钮“添加”。第一个.append("checked")
是为了确保我调用函数,但奇怪的是,它只显示一次,即使我有几个复选框,我检查了所有。
另一个问题,我不能显示如下内容:
fbType = $('td.nth(2)', $(this)).html();
fbNum = $('td.nth(3)', $(this)).html();
为什么会这样呢?这是至关重要的,因为你可以看到,我会将这些数据发布到python函数中...
请告诉我我的代码出现了什么问题,以及我应该怎么做。
啊,所以它会遍历所有行?我真的不知道.each()会如何迭代,尽管我已经多次阅读了关于它的jquery API。 – yvonnezoe 2013-05-02 09:05:28
这只会遍历具有以'monitor_'开头的ID的元素,并且它会在您的案例中找到所有复选框,因为它们都适用于此选择器 – Tomas 2013-05-02 09:07:39
哦,谢谢!但我怎么能确保它通过所有选中的复选框循环并调用函数?它无法显示任何内容,并且无法排除故障。 :( – yvonnezoe 2013-05-02 09:12:25