这是我的部分代码:
$('#monitor').click(function(){
setInterval(function(){
$('#status_table tr [id^="monitor_"]:checked').each(function () {
monitoring($(this).parents('tr'));
});
},15000);
});
我想为monitoring
选中复选框的表中的每一行调用该函数。如果我只有一个,它工作正常。但是当我有多个时,它会变得混乱,这意味着它不会在表中附加正确的状态。这是我的功能monitoring
:
function monitoring($row) {
fbType = $row.find('td:nth-child(3)').html();
fbNum = $row.find('td:nth-child(4)').html();
eachStatus =$row.find('td:nth-child(5)').attr('id');
$('#ptest').append(fbType + ' '+ fbNum+' '+ eachStatus +'<br>');
$.post('/request', {inputText: fbNum,key_pressed: fbType.toString()}).done(function (reply) {
if (reply == "on") {
$('#status_table tr #'+eachStatus).empty().append("on");
} else if (reply =="off") {
$('#status_table tr #'+eachStatus).empty().append("off");
}
});
}
如何延迟每一行的函数调用?我尝试了以下
$('#monitor').click(function(){
setInterval(function(){
$('#status_table tr [id^="monitor_"]:checked').each(function () {
setTimeout(function(){
monitoring($(this).parents('tr'));
});
},1000);
},15000);
});
但 div #ptest 显示undefined
.