Javascript 每一个内部都有一个压井环

Javascript 每一个内部都有一个压井环,javascript,jquery,Javascript,Jquery,如何消除每个循环中的循环? 我的意思是,这是我的代码,当查询有100个结果时,不知何故(如果你能解释一下原因,我会很高兴)警报在只单击一个结果后弹出100次 (单击一个结果需要弹出警报1次) var tit_id='#tit_'+this.SN; 函数数据(查询){ var incld=''; $.each(查询、函数(){ 如果(this.wCount!=0){ $(tit_id)。单击(函数(){ 警报('RRRRRRRRRRRRRRR') }); 对于查询返回的每个元素,您将在同一元素上附

如何消除每个循环中的循环? 我的意思是,这是我的代码,当查询有100个结果时,不知何故(如果你能解释一下原因,我会很高兴)警报在只单击一个结果后弹出100次 (单击一个结果需要弹出警报1次)

var tit_id='#tit_'+this.SN;
函数数据(查询){
var incld='';
$.each(查询、函数(){
如果(this.wCount!=0){
$(tit_id)。单击(函数(){
警报('RRRRRRRRRRRRRRR')
});

对于查询返回的每个元素,您将在同一元素上附加相同的处理程序:

是否要在返回的每个项目上附加单击处理程序

$.each(QUERY, function () {
    if (this.wCount != 0) {
        $(this).click(function () {      
            alert('RRRRRRRRRRRRRRR')
        });
    }
}
编辑

因此,如果您想发出警报,然后退出each循环,您可以像Jasper所说的那样,从each回调返回false:

$.each(QUERY, function () {
    if (this.wCount != 0) {
        $(this).click(function () {      
            alert('RRRRRRRRRRRRRRR')
            return false;
        });
    }
}

我不是100%确定你在问什么。如果你想打破
$。each()
循环,你可以
返回false;

文件规定:

我们可以通过使 回调函数返回false。返回非false与 for循环中的continue语句;它将立即跳到下一个循环 迭代


文档链接:(在示例之前查看)

您说过查询有100个结果。因此您的
$。每个
执行100次,每次都会将另一个事件处理程序附加到
tit\u id
。当您单击时,所有100个事件处理程序都会运行。从.each()的jQuery文档中:“我们可以打破$.each()通过使回调函数返回false,在特定迭代中循环。返回non-false与for循环中的continue语句相同;它将立即跳到下一个迭代。”你能提供一个完整的代码示例吗?你提供的代码不是有效的JavaScript。另外,你在哪里修改
这个.wCount
?你说的“杀死循环”是什么意思?中断语句?单击该元素时会发生什么?请重新构造代码以提高可读性。@FelixKling:该函数将在每个元素上调用,因此
每次都引用另一个上下文。但我不想中断每个,我只想警报只会弹出一次,每个警报都会运行到下一个t、 …如果有1000个结果,我需要警报将弹出一次,并且仅针对已单击的结果,但我不想破坏每个警报,我只希望警报将弹出一次,并且每个警报将运行到下一个…如果有1000个结果,我需要警报将弹出一次,并且仅针对已单击的结果
$.each(QUERY, function () {
    if (this.wCount != 0) {
        $(this).click(function () {      
            alert('RRRRRRRRRRRRRRR')
            return false;
        });
    }
}