好的,我会尽力解释这个。
我有一个带有下拉列表的主html页面。单击下拉列表时,jquery会将另一个外部html加载到页面上的DIV中。有几个下拉项目,因此根据选择的下拉选项将2个不同的外部htmls加载到同一个DIV中。这很好。
我遇到的问题是,在加载的其他html文件上,我有一些jquery根据页面中点击的按钮或链接更新标签。一切正常,直到我使用主下拉列表更改页面/ div选项,然后其他HTML文件中的任何jquery似乎多次执行,其中#次等于下拉选择的次数。
例如,如果我从主下拉列表中选择“用户”,它会加载一个带有用户列表的html,我可以删除或添加新用户,然后向该用户添加一些组。我第一次加载这个模板,一切正常。如果我返回并从主下拉列表中重新选择“用户”,现在每当我添加一个组或单击一个链接进行用户更改时,就好像我多次点击它一样。如果我重新加载整个主页面,此问题将停止,直到我再次重新选择下拉列表。
这是一个jquery的问题,还是其他一些bug?
答案 0 :(得分:0)
修复是添加event.stopImmediatePropagation();在div模板中的click处理程序内。
$(document).on('click',"[name=removeCategory]",function(event) {
event.stopImmediatePropagation();
...