解决Jquery中使用each循环时,循环外的js依旧会执行

今天在改项目bug时,发现一个问题,我获取一个div中所有的input,并取值时,判断某一条件,但是循环外的js依然可以执行。

   $(".tab-reg-next input").each(function() {
            if ($(this).attr("id") == 1) {
                return ;
            }
        });

 

很奇怪,一般来说return会终止js,但是今天万万没想到的是,jquery 的each循环中,return不好使,原因是因为each中的return与外面的函数是没有关系的,只是单独一个循环而已,所以改成下面的方式,就可以了

 

复制代码
var result = true;
        $(".tab-reg-next input").each(function() {
            if ($(this).attr("id") == 1) {
                result = false;
                return false;
            }
        });
        if (!result) {
            $.fd.msg.notice("图片太大,超过5mb");
            return
        }
复制代码

 

posted @ 2018-07-10 13:52  MichaelKai  阅读(325)  评论(0)    收藏  举报
编辑推荐:
· C#.Net筑基-泛型T & 协变逆变
· dotnet 代码调试方法
· DbContext是如何识别出实体集合的
· 一次 .NET 性能优化之旅:将 GC 压力降低 99%
· MySQL索引完全指南:让你的查询速度飞起来
阅读排行:
· 我救了一个网站,性能提升了1500 多倍!
· .NET程序员的多语言笔记本:Polyglot Notebook
· 免费开源 .NET OpenCV 迷你运行时全平台发布
· 经验贴!万字总结网卡丢包及ping延迟等网络问题排查思路
· 用好索引的10条军规
点击右上角即可分享
微信分享提示