我有一个表格,显示从PHP脚本中提取的信息,如下所示:
<tr class="online" id="0011e31xxxxx">
<td><input type="checkbox" name="mac" value="0011e31xxxxx"></td>
<td>1234567</td>
<td>Modelnumber</td>
<td>0011.e31x.xxxx</td>
<td>10.x.x.x</td>
<td>UBR4</td>
<td>online</td>
<td><a href="javascript:void(0);" onclick="getInfo('0011e31xxxxx','10.x.x.x','UBR4','resetubr');"><img src="/own/v2.2/images/reset.gif"></a></td>
<td><a href="javascript:void(0);" onclick="getInfo('0011e31xxxxx','10.x.x.x','UBR4','resetsnmp');"><img src="/own/v2.2/images/reset.gif"></a></td>
<td><a href="javascript:void(0);" onclick="getInfo('0011e31xxxxx','10.x.x.x','UBR4','refresh');"><img src="/own/v2.2/images/icone_refresh.png"></a></td>
</tr>
3个getInfo调用链接如下并完美运行:
<script>
function getInfo(id,adresseip,ubr,action) {
var rowid = "tr#" + id;
$.ajax({
type: "GET",
cache: false,
url: 'index.php',
data: "macaddress=" + id + "&ubr=" + ubr + "&adresseip=" + adresseip + "&action=" + action,
beforeSend: function() {
$(rowid).addClass("loading");
},
success: function(data) {
$(rowid).replaceWith(data);
}
});
}
</script>
我想要做的是使用每个<tr>
开头的复选框,以便生成某种循环来运行每行上看到的三个链接之一。
假设我检查了3个方框(值123,234和345),我需要<tr id=123><tr id=234> and <tr id=345>
来更新它们各自的行,而其余的数据保持不变。
是否有可能使这样的循环调用AJAX函数运行多次与选中的复选框一样?或者AJAX函数可以迭代每个选中的复选框,以便一个接一个地更新它们吗?
谢谢
答案 0 :(得分:1)
请在Google上搜索然后尝试...如果您没有得到任何答案,请提出问题...
$('#TableID > tr').each(function() {
var postData = {
'FirstName':$(this).find('#FirstName').val(),
'SurName':$(this).find('#Surname').val()
};
$.ajax({
type: "POST",
cache: false,
url: "WuFoo.aspx",
data: postData ,
success: success
});
});
答案 1 :(得分:0)
您可以通过执行类似
的操作来获取所有带有JQuery的复选框 $("input[type=checkbox]:checked")
然后,您可以使用.each
迭代它们并更新每个适当的行。
该代码应该放在您的ajax调用的success:
函数中。
或者,您可以使用相同的JQuery代码来获取复选框,然后选择<tr>
中的.each
并使用该数据进行Ajax调用。