我在网页上有一个元素,一个修改按钮,是动态生成的,使用如下语句生成(她在一个大表格form2里面)
$("#revistr").html("<td id=\"revise\"><a href=\"#\" class=\"button\" >修改</a></td>");
然后我使用如下代码进行绑定
$(document).ready(function(){
$("#revistr").on('click','#revise',function()
绑定完了之后没有问题,可以使用,但我现在因为一些必须的原因,需要动态的生成整一个表form2,于是我就调整动态生成元素,把整个表都通过
$("#details").html("<form id=\'form2\'>。。。。<tr id=\"revisetr\"><td id=\"revise\">。。。。
但是这样子动态生成的就无法绑定了,没有效果,我看了浏览器调试工具,看网页代码,id什么都对的,就是无法调用那个那个动作了,而且我又试了一下,我先jq生成表格,然后在表格生成那个需要绑定的元素,也还是不行。。奇了怪了。。有谁知道怎么回事么,,谢谢
要在$("#details").html执行后在执行$("#revistr").on('click','#revise',function()操作,要不会找不到revistr对象,之前你的revistr是dom已经存在了,on可以在指定对象上执行方法(即使是后面动态加上去的)
就是指定on时jquery选出的对象一定要在dom中存在,可以改为$("#details").on('click','#revise',function()