当我想通过动态添加按钮触发事件时,我遇到了一个问题。
<h1>Image attributes</h1>
<table id="imtbl" border="1" cellpadding="0" cellspacing="0">
<tr>
<th>SOURCE</th>
<th>ALT</th>
<th>TITLE</th>
</tr>
</table>
<input type="button" id="imagetg" value="get line" />
以下是我正在使用的HTML ...
$("#imagetg").click(function() {
var str = $("#t").val();
alert(str);
var srres = str.match(/<img(\"[^\"]*\"|'[^']*'|[^'\">])*>/gi);
alert(srres.length);
for (i = 0; i < srres.length; i++) {
var atim0 = $("" + srres[i]).attr("src");
var atim = $("" + srres[i]).attr("alt");
var atim1 =" "+ $("" + srres[i]).attr("title");
$("#imtbl").append("<tr><td align='center' width='150'>"+atim0+"</td><td align='center' width='150'>"+atim+"</td><td align='center' width='150'>"+atim1+"</td><td><input type='button' value='UPDATE' class='upbtn' id='"+i+"'/></td></tr>");
}
});
这是动态添加行的脚本。
$(".updt").click(function(){
var varid= $(this).attr("id");
alert("Hello"+varid);
});
这是我点击“更新”按钮时要触发的事件。但它没有被触发,有人可以帮助我解决这个问题,这会有所帮助。 谢谢。
答案 0 :(得分:0)
试试这个
$("#imagetg").click(function() {
var str = $("#t").val();
alert(str);
var srres = str.match(/<img(\"[^\"]*\"|'[^']*'|[^'\">])*>/gi);
alert(srres.length);
for (i = 0; i < srres.length; i++) {
var atim0 = $("" + srres[i]).attr("src");
var atim = $("" + srres[i]).attr("alt");
var atim1 =" "+ $("" + srres[i]).attr("title");
$("#imtbl").append("<tr><td align='center' width='150'>"+atim0+"</td><td align='center' width='150'>"+atim+"</td><td align='center' width='150'>"+atim1+"</td><td><input type='button' value='UPDATE' class='upbtn' id='"+i+"'/></td></tr>")
}
$(".updt").click(function(){
var varid= $(this).attr("id");
alert("Hello"+varid);
});});
答案 1 :(得分:0)
非常感谢你的帮助......
我得到了一个解决方案......现在问题已经解决了。
我们需要使用的脚本是
$("#imtbl").on('click','.upbtn',function(){
var varid= $(this).attr("id");
alert(varid);
});
这将解决问题。