如果元素是在循环中创建的,则引导下拉菜单不会触发单击事件
Bootstrap dropdown not firing click event if elements are created in a loop
我试图使用带有链接的普通Bootstrap下拉菜单,但我想激发Jquery代码,而不是像往常一样重定向链接。该列表将从数据库表中动态创建。
如果我将列表定义如下,我可以让它正常工作。
$(".sitedropdown").append('<li><a class="sitelink" href="#">s</a></li>');
$(".sitedropdown").append('<li><a class="sitelink" href="#">asd</a></li>');
不过,只要我尝试运行一个循环来添加元素,click事件就会神奇地停止工作。
var obj = $.parseJSON(data);
$.each(obj,function(index,arr){
$(".sitedropdown").append('<li><a class="sitelink" href="#">'+arr.wpname+'</a></li>');
});
我到处找这个,但什么也找不到。在有人问之前,是的,我正在使用jquerys ON事件来处理动态添加的元素。
因此,请尝试委派事件:$(".sitedropdown").on("click",".sitelink",function(e){>e.preventDefault();alert("bob");});–A.Wolff
沃尔夫一拍即合。
再次感谢
相关文章:
- 下拉菜单大小已更改事件
- Javascript问题与下拉菜单上的单击事件有关
- 用于关闭和打开的Jquery事件选择下拉菜单,而不是在更改时
- 如果元素是在循环中创建的,则引导下拉菜单不会触发单击事件
- 从下拉菜单中选择事件 - 仅限 Javascript
- 从下拉菜单中选择事件后的选项
- 使用Apple Script选择带有*浏览器事件*的Safari下拉菜单
- 自定义下拉菜单,何时触发隐藏菜单事件
- Google Map API下拉菜单Onchange事件侦听器
- 如何在Bootstrap select中的下拉菜单关闭时触发事件,并在Backbone.js中进行多选
- 单击特定列表项后,取消引导程序下拉菜单上的隐藏事件
- 切换隐藏/显示下拉菜单选择事件
- 如何使“改变事件”;使用.attr()时处理选择下拉菜单
- 点击下拉菜单上的事件
- Javascript下拉菜单onchange事件只针对一个函数
- 如何显示加载器,当我从下拉菜单中选择的东西?意味着从后端加载数据时,它应该显示一些事件,如旋转器
- MouseOut / mouselleave -事件触发下拉菜单
- 我试图在引导下拉菜单上实现单击事件
- 基础6下拉菜单事件不触发
- 下拉菜单事件侦听器