ajax循环出来的数据如何选中呢
$("#sel").click(function (){
$.ajax({
url : 'bound',
type : 'POST',
dataType : 'json',
data: {ny : $("#ny").val()},
success : function (msg){
var ta = document.getElementById("ta");
for (var n = ta.rows.length - 1; n > 0; n--) {
ta.deleteRow(n);
}
for (i = 0; i < msg.length; i++) {
$("#ta").append("<tr><td>"+msg[i].YYBH+"</td><td>"+msg[i].NY+"</td><td>"+msg[i].XMWYID+"</td><td>"+msg[i].XMMC+"</td><td>"+msg[i].YPTYMC+"</td><td>"+msg[i].RKDH+"</td><td>"+msg[i].SCCS+"</td><td>"+msg[i].GHDW+"</td><td>"+msg[i].GHRQ+"</td><td>"+msg[i].XHDW+"</td><td>"+msg[i].JX+"</td><td>"+msg[i].GG+"</td><td>"+msg[i].GHSL+"</td><td>"+msg[i].XHSL+"</td><td>"+msg[i].JCL+"</td><td>"+msg[i].GHJG+"</td><td>"+msg[i].BZ1+"</td><td>"+msg[i].BZ2+"</td><td>"+msg[i].BZ3+"</td></tr>")
}
}
});
});
这样写每次alert 每次点击表头有反应,点击下面的就没反应了
$("table tr").click(function() {
var td = $(this).find("td");
var lo_id = td[1].innerHTML;
alert(lo_id);
});
用on代理,直接$("table tr")只能帮顶上当时存在的tr,后续添加的无效
$('table').on('tr',function(event){
var td = $(this).find("td");
var lo_id = td[1].innerHTML;
alert(lo_id);
});
在行头绑定ID,选中时用ID进行取行数据
因为绑定事件时页面上还没有除表头以外的tr,可以给table添加监听事件,然后获得点击位置,例如:
$('table').on(function(event){
var tr = $( event. target);
});
这样就能获得都点击对象,如果获得到的不是tr是td可以再用parent方法。
$(':button').click(function(){
$('table').append('
$("table").on("click","tr td",function(){
var td = $(this)
var lo_id = td.val()
alert(lo_id);
});
用事件委托,你试试,记得大概是这样
使用on绑定事件
$(document).on(click, "table tr", function() {
var td = $(this).find("td");
var lo_id = td[1].innerHTML;
alert(lo_id);
});