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());
})
);
展开
 我来答
澄清韵Zk
2015-05-24 · TA获得超过189个赞
知道小有建树答主
回答量:157
采纳率:0%
帮助的人:165万
展开全部
$(".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)。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式