Jquery 列表上的嵌套单击事件正在进行多次调用
我有一份物品清单 如果我单击列表1、->2、->3,然后单击Jquery 列表上的嵌套单击事件正在进行多次调用,jquery,Jquery,我有一份物品清单 如果我单击列表1、->2、->3,然后单击Btn,它的运行次数与单击Btn 这里是示例演示 $('li.list group item')。在('click',函数(e)上{ $('circle btn')。在('click',函数(p){ 警惕(“检查”); }); }) Btn 1. 2. 3. 此代码存在问题: $('li.list-group-item').on('click', function(e) { $('.circle-btn').on('
Btn
,它的运行次数与单击Btn
这里是示例演示
$('li.list group item')。在('click',函数(e)上{
$('circle btn')。在('click',函数(p){
警惕(“检查”);
});
})
Btn
1.
2.
3.
此代码存在问题:
$('li.list-group-item').on('click', function(e) {
$('.circle-btn').on('click', function(p) {
alert('check');
});
})
$('.circle-btn').on('click', function(p) {
alert('check');
});
基本上,您所做的是,每当在列表组项目上有一个单击事件时,您订阅一个新的单击事件处理程序,这意味着如果您单击。列表组项目15次,将定义15次相同的事件处理程序
只需将内部单击侦听器移出外部单击侦听器
$('li.list-group-item').on('click', function(e) {
$('.circle-btn').on('click', function(p) {
alert('check');
});
})
此代码为btn上列表事件中的每个元素添加。如果您只需要一个事件,请在按钮上单击“您需要此代码”:
$('li.list-group-item').on('click', function(e) {
$('.circle-btn').on('click', function(p) {
alert('check');
});
})
$('.circle-btn').on('click', function(p) {
alert('check');
});
您需要在$('.circle btn')中添加e.stopPropogation()
或p.stopPropogation()
方法。在('click',function(p)
上,将其添加到警报()
方法的底部
$('.list group item')。在('click',函数(e)上{
$('circle btn')。在('click',函数(p){
警惕(“检查”);
e、 停止传播();
});
});
按钮
1.
2.
3.
不,我不能,我在这里简单地找到了一个解决方案,但在第一次单击时,它会获取与该列表项相关的所有区块链状态、地址和余额,然后我需要使用该数据执行第二次单击。使用该方法有什么解决方法吗?使用e.stopPropogation()
内部$('.circle btn')。on(“单击”,函数(p){
函数到alert()
方法的底部。