从一个table中取其里面的元素添加到另一table中,添加后引发click事件无效!
我的写法:
$(".bt_AddWareClasse").bind("click", function () {
alert("test_0");
})
这里没反应?
向AddWareClasse添加元素,这里添加元素是没有问题也能正常显示!
$("input[name='Order']").click(function () {
var HTML = "";
HTML = $("#Order_0").html();
$("#AddWareClasse").append(HTML);
});
所要添加的元素代码如下:
<table id="Order_0" style="display: none;">
<tr>
<td style="text-align: center" colspan="2">
<input type="button" name="bt_AddWareClasse" class="bt_AddWareClasse" value="确定" />
</td>
</tr>
</table>
想动态绑定事件. 应该使用on语句绑定.
例如:
$(document).on("click", ".bt_AddWareClasse", function () {
alert("test_0");
});
直接追加html是创建新的元素。需要重新绑定事件。
使用bind只能绑定存在的元素,后期动态添加的请使用live,如:
$(".bt_AddWareClasse").live("click", function () { alert("test_0"); })
以上是jquery 1.x(x具体到多少我也忘记了)
如果是jquery 2.x(具体那个版本开始不太清楚了),请使用on
$(document).on("click", ".bt_AddWareClasse", function () { alert("test_0"); });
事件是针对已有的元素才能添加,你是后面来的的元素,当然也就没有注册事件了。
dom还没有就绪。