html页面要这样获取input标签的值
innertr+=“<tr>+.....................+"<td><inputclass='confirmbutton2'type='button'va...
innertr += “<tr>+.....................+
"<td ><input class='confirmbutton2' type='button' value='确认' ></input></td>"+
"<td class='div_click' ><input type='text' value='"+item.id+"'></input></td>"+
"</tr>";
$("#mainList").append(innertr);
这段代码会在js中调用多次,形成一张多行的表格,请问当我想点击本行的class='confirmbutton2'的按钮时,获取下一个td(即<input type='text' value='"+item.id+"'></input>)的值,应当如何写。
我这样写的,没用
$(".confirmbutton2").each(
$(this).click(function(){
alert($(this).next().val());
})
); 展开
"<td ><input class='confirmbutton2' type='button' value='确认' ></input></td>"+
"<td class='div_click' ><input type='text' value='"+item.id+"'></input></td>"+
"</tr>";
$("#mainList").append(innertr);
这段代码会在js中调用多次,形成一张多行的表格,请问当我想点击本行的class='confirmbutton2'的按钮时,获取下一个td(即<input type='text' value='"+item.id+"'></input>)的值,应当如何写。
我这样写的,没用
$(".confirmbutton2").each(
$(this).click(function(){
alert($(this).next().val());
})
); 展开
展开全部
$(".confirmbutton2").click(function(){
alert($(this).closest("td").next().children().val());
});
追问
无效,试过了
追答
$("table").delegate(".confirmbutton2","click",function(){
alert($(this).closest("td").next().children().val());
});
由于监听的对象是动态生成的,所以在生产前绑定事件,生成后的元素是没有被绑定到的。所有解决方法有两个,一是生产后再绑定一次,二是使用delegate(如上,table可以换成对应table的id)。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询