delegate说起对未来元素是其作用的,于是写下代码:

<!DOCTYPE HTML>
<html>
<head><meta charset="utf-8"><meta http-equiv="x-ua-compatible" content="ie=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>知几 - 教师端</title><meta name="description" content=""><link rel="apple-touch-icon" href="http://cdn.dev.tiplus.cn/client-teacher/apple-touch-icon.png"><script type="text/javascript" src="jquery.min.js"></script>
</head><body><p class="xxx">click</p>
<div id="a"></div>
<li class="add_reason"><span>xx</span></li><script type="text/javascript">
$(".xxx").click(function(){$("#a").append('<li class="add_reason"><span style="display:block;">xx</span></li>');
})$(".add_reason").delegate("span", "click",function(){alert("ddd");
});
</script></body>
</html>

其实不然,对与通过点击xxx元素新加的html,根本没有作用。

错误: 页面出现动态添加元素时,添加元素的事件用普通的方法,无法响应。

原因: 普通添加的事件,只是在document.ready时绑定的已有元素事件,所以动态添加的元素,在document.ready时不存在,所以也无法绑定元素事件,无法对事件进行响应。

这时候,需要用到上面的三个绑定方法;这三个方法只所以成功,是因为这三个方法是绑定到document上,如果元素发生变化,也都是从document开始找,动态添加的元素也能被重新查找时所发现,所以事件能够响应。换成如下代码,成功执行:

<!DOCTYPE HTML>
<html>
<head><meta charset="utf-8"><meta http-equiv="x-ua-compatible" content="ie=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>知几 - 教师端</title><meta name="description" content=""><link rel="apple-touch-icon" href="http://cdn.dev.tiplus.cn/client-teacher/apple-touch-icon.png"><script type="text/javascript" src="jquery.min.js"></script>
</head><body><p class="xxx">click</p>
<div id="a"></div>
<li class="add_reason"><span>xx</span></li><script type="text/javascript">
$(".xxx").click(function(){$("#a").append('<li class="add_reason"><span style="display:block;">xx</span></li>');
})$(document).on('click', '.add_reason',function() { alert("2");
});
</script></body>
</html>

完毕。

转载于:https://www.cnblogs.com/zl0372/p/jquery.html

jquery添加未来元素时,其绑定事件不起作用解决办法相关推荐

  1. jQuery on()方法绑定动态元素的点击事件无响应的解决办法

    $('#check_all').on('click' , function(){ alert(1); }); $("#yujinlist").append(html); count ...

  2. 【JQ】动态添加的元素无法触发绑定事件的解决办法

    情景 如上面的模态框,点击左边的添加按钮,会把整个div添加到右边,点击右边的删除按钮,则把整个div添加回左边,就类似于穿梭框的样子. 不难,下面是一开始想到的方案: $('#SelectedDev ...

  3. html 元素响应,jQuery动态添加html元素后,响应事件的问题记录

    var li = " " + "" + // 缩略图 点击部分 index='" + i + "' "" + " ...

  4. jQuery添加插入元素技巧

    1.jQuery添加插入元素技巧有两种:指定元素的里面和外面 2.里面添加: 里面的前面添加:prepend.prependTo: 里面的后面添加:append.appendTo: 3.外面添加: 外 ...

  5. jquery 添加插入元素技巧前面和后面

    jquery添加插入元素技巧: jquery添加分为在指定元素的里面添加和外面添加两种: 里面添加使用(append 和prepend) 里面添加又分为在里面的前面添加和后面添加 里面的前面添加使用 ...

  6. jq增加删除html标签,jQuery添加\删除元素

    jQuery添加\删除元素 html> jquery添加和删除元素 $(function(){ //添加元素 //元素内部添加 //append()在被选元素的结尾插入内容; // $('but ...

  7. Git在添加目录时遇到了Fatal: unpopulated submodule的解决办法

    Git在添加目录时遇到了Fatal: unpopulated submodule的解决办法 今天,在把以前的一个目录整体拷贝到git的目录下时,在add的时候遇到了报错,提示unpopulated s ...

  8. mysql 启动安全模式_“ Word上次启动时失败,以安全模式启动Word ....”解决办法...

    " Word上次启动时失败,以安全模式启动Word ...."解决办法  Word上次启动时失败,以安全模式启动word将帮助您纠正或发现启动中的问题,下一次成功启动应用程序.但是 ...

  9. 移动端html右滑空白,BootStrap.css 在手机端滑动时右侧出现空白的原因及解决办法...

    最近的一个项目 前台使用了 bootstrap.css + angularjs, 后台只处理数据(用的php,处理结果直接 json_encode($arr),非常爽).一直在Chrome的仿真机测试 ...

最新文章

  1. 优秀校园网站评比标准
  2. create view必须是批处理中仅有的语句_sqlserver 脚本和批处理指令小结
  3. Vim 键盘指令高清图
  4. DFTug - Architecture Your Test Design
  5. ML之DT:基于DT决策树算法(交叉验证FS+for遍历最佳FS)对Titanic(泰坦尼克号)数据集进行二分类预测
  6. php如何检测图片背景是白色,javascript – 用PHP检测白色图像背景?
  7. php 扩展apc 参数优化
  8. 有没有python的班_【万字长文】别再报班了,一篇文章带你入门Python
  9. 微信小程序—day01
  10. 面向对象之软件需求中的体系构造
  11. collectionutils包_基于springframework的集合处理工具类CollectionUtils对常见对象查找包含转换操作...
  12. 博途调试g120_【免费资料】西门子变频器调试软件汇总
  13. java程序员待遇怎么样_现在的java程序员薪资待遇怎么样?
  14. java线上培训班学费一般多少,成长路线图
  15. 算法设计 L型组件填图问题
  16. MATLAB神经网络工具箱函数各种图的解释
  17. android 自定义字体 ttf,Android利用TTF文件设置字体
  18. 微信二维码来源统计自动生成二维码统计?
  19. Zookeeper 简介
  20. Docker之旅(1)-Docker基础

热门文章

  1. from robot.api import logger
  2. C#中通过WMI的Win32_DiskDrive对象获取磁盘驱动器信息简介
  3. 满足StrataFlash嵌入式存储器要求的LDO应用电路
  4. Serial Old收集器和Parallel Old收集器
  5. Zookeeper 如何选举master 主节点?
  6. 消息中间件的 Style
  7. html诗词赏析网页制作步骤,制作网页详细操作步骤
  8. mysql 1418 存储过程_MySQL自定义函数 1418报错
  9. android高德地图绘制多边形_Android安卓高德地图实现多边形绘制与编辑
  10. WebFlux响应式编程基础之 2 函数式编程 工具jclasslib bytecode viewer