漆黑天使复活 2016-03-11 08:27 采纳率: 44.4%
浏览 1427
已采纳

JQ 动态元素的绑定问题,遇到了很奇怪的现象

我在网页上有一个元素,一个修改按钮,是动态生成的,使用如下语句生成(她在一个大表格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生成表格,然后在表格生成那个需要绑定的元素,也还是不行。。奇了怪了。。有谁知道怎么回事么,,谢谢

  • 写回答

1条回答

  • Go 旅城通票 2016-03-11 08:48
    关注

    要在$("#details").html执行后在执行$("#revistr").on('click','#revise',function()操作,要不会找不到revistr对象,之前你的revistr是dom已经存在了,on可以在指定对象上执行方法(即使是后面动态加上去的)

    就是指定on时jquery选出的对象一定要在dom中存在,可以改为$("#details").on('click','#revise',function()

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题