$.each(thedata.data, function() {
$('#theReturnFormTable').append(
'<tr id="newReturn"><td align="center"><a href="##" id="link">'+ this.newrequestor
+'<input type="hidden" id="theID" value="'+ this.theid +'"></a></td><td
align="center">'+ this.newthedate +'</td><td>'+ this.theid +'</td><td
align="center">'+ this.newapproved +'</td>
<td align="center">'+ this.newsecurityaction +'</td></tr>'
);
});
结果:
requestor=dave theID = 75
requestor=frank theID = 76
requestor=bill theID = 77
requestor=george theID = 78
requestor=sam theID = 79 and so on.
我在每一行都有链接,无论我点击哪一行而不是传递该行的ID值,它都会抓取ID = 75。我有脑冻结。任何想法如何传递每行的ID值?
这是我将ID传递给
的地方$("#link").live("click", function(){
//show layer Div
$("#theHover").show();
alert($("#theID").val());
var instance = new readers_cls();
var theID = $("#theID").val();
newdata = instance.getRequestSecurity(theID);
newrooms = instance.getRequestSecurityRooms(theID);
newcust = instance.getRequestSecurityCust(theID);
我知道它只是下到页面并抓取html中的第一个ID。我需要想办法解决这个问题。
答案 0 :(得分:0)
你在你发布的第一个循环中创建了多个id为'theID'的元素,这并不好。为什么不在那里创建具有正确ID的元素,然后:
$.each(thedata.data, function() {
$('#theReturnFormTable').append(
'<tr id="newReturn"><td align="center"><a href="##" id="link">'+ this.newrequestor
+'<input type="hidden" id="id_'+this.theid'" value="'+ this.theid +'"></a></td>
...
);
});
这样所有隐藏的输入元素都会有一个uniqui id,你稍后会选择...
答案 1 :(得分:0)
我认为这是因为您为所有元素提供了非唯一ID(因为您在该代码中分配了静态ID)。使用类和“this”关键字。