解决jQuery ajax动态新增节点无法触发点击事件的问题


Posted in jQuery onMay 24, 2017

在写ajax加载数据的时候发现,后面添加进来的demo节点元素,失去了之前的点击事件。为什么点击事件失效,我们该怎么去解决呢?

其实最简单的方法就是直接在标签中写onclick="",但是这样写其实是有点low的,最好的方式还是通过给类名绑定一个click事件。

解决jQuery ajax动态新增节点无法触发事件问题的两种解决方法,为了达到更好的演示效果,假设在某个页面的body下有以下结构的代码:

<ul id="demo">
  <li class="demo1">a1</li>
  <li class="demo1">a2</li>
  <li class="demo1">a3</li>
 </ul> 
 <script type="text/javascript">
 $("#demo").click(function(){
  $("#demo").append('<li class="demo1">aaa4</li>'); //动态像ul的末尾追加一个新元素
 });
 </script>

方法一:使用live:

live()函数会给被选的元素绑定上一个或者多个事件处理程序,并且规定当这些事件发生时运行的函数。通过live()函数适用于匹配选择器的当前及未来的元素。比如,通过脚本动态创建的元素。

实现如下:

$('.demo1').live('click', function(){
 alert('OK');
});

方法二:使用on:

可以通过on方法绑定事件,可以绑定到它的父级或者body中,实现如下:

$("#demo").on('click','.demol',function(){
 alert('OK')
});

通过上面的两种方法,都可以解决jQuery ajax动态新增节点无法触发点击事件的问题。知道方法了,赶紧的试试吧。

以上所述是小编给大家介绍的解决jQuery ajax动态新增节点无法触发点击事件的问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
使用jQuery,Angular实现登录界面验证码详解
Apr 27 jQuery
jQuery动态追加页面数据以及事件委托详解
May 06 jQuery
jquery实现下拉菜单的手风琴效果
Jul 23 jQuery
使用jQuery 操作table 完成单元格合并的实例
Dec 27 jQuery
jQuery中将json数据显示到页面表格的方法
May 27 jQuery
jquery.pagination.js分页使用教程
Oct 23 jQuery
jQuery选择器选中最后一个元素,倒数第二个元素操作示例
Dec 10 jQuery
详解JQuery基础动画操作
Apr 12 jQuery
js与jquery获取input输入框中的值实例讲解
Feb 27 jQuery
jquery实现垂直手风琴菜单
Mar 04 jQuery
jQuery实现B2B网站后台管理系统侧导航
Jul 08 jQuery
基于jquery实现彩色投票进度条代码解析
Aug 26 jQuery
JQuery Ajax 异步操作之动态添加节点功能
May 24 #jQuery
使用jQuery.Pin垂直滚动时固定导航
May 24 #jQuery
jquery append与appendTo方法比较
May 24 #jQuery
jQuery日期范围选择器附源码下载
May 23 #jQuery
最常用的jQuery表单验证(简单)
May 23 #jQuery
jquery实现简单实用的轮播器
May 23 #jQuery
jquery实现图片轮播器
May 23 #jQuery
You might like
php 传值赋值与引用赋值的区别
2010/12/29 PHP
php网页标题中文乱码的有效解决方法
2014/03/05 PHP
php中数字0和空值的区别分析
2014/06/05 PHP
PHP程序员必须清楚的问题汇总
2014/12/18 PHP
WordPress特定文章对搜索引擎隐藏或只允许搜索引擎查看
2015/12/31 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
2012/12/19 Javascript
循环 vs 递归浅谈
2013/02/28 Javascript
各浏览器对document.getElementById等方法的实现差异解析
2013/12/05 Javascript
JavaScript实现继承的4种方法总结
2014/10/16 Javascript
jquery插件corner实现圆角边框的方法
2015/03/09 Javascript
javascript中mouseover、mouseout使用详解
2015/07/19 Javascript
jQuery解析Json实例详解
2015/11/24 Javascript
浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入
2016/01/19 Javascript
基于angularJS的表单验证指令介绍
2016/10/21 Javascript
JS制作适用于手机和电脑的通知信息效果
2016/10/28 Javascript
jQuery实现点击某个div打开层,点击其他div关闭层实例分析(阻止冒泡)
2016/11/18 Javascript
javascript实现页面滚屏效果
2017/01/17 Javascript
JS对象的深度克隆方法示例
2017/03/16 Javascript
详解vue-router 2.0 常用基础知识点之router-link
2017/05/10 Javascript
基于EasyUI的基础之上实现树形功能菜单
2017/06/28 Javascript
微信小程序自定义单项选择器样式
2019/07/25 Javascript
Element中Slider滑块的具体使用
2020/07/29 Javascript
python在Windows下安装setuptools(easy_install工具)步骤详解
2016/07/01 Python
利用Python开发实现简单的记事本
2016/11/15 Python
python基础教程之匿名函数lambda
2017/01/17 Python
Python 中字符串拼接的多种方法
2018/07/30 Python
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
Python实现E-Mail收集插件实例教程
2019/02/06 Python
浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器
2019/03/11 Python
利用python实现PSO算法优化二元函数
2019/11/13 Python
解决tensorflow由于未初始化变量而导致的错误问题
2020/01/06 Python
KENZO官网:高田贤三在法国创立的品牌
2019/05/16 全球购物
《望洞庭》教学反思
2014/02/16 职场文书
Python数据分析之绘图和可视化详解
2021/06/02 Python