checkbox选中元素遍历循环,alert 和layer.msg问题

一下是选中事件,页面就不展示了;

具体问题是:在进行选中元素的遍历时,如果在条件判断中用alert则没有问题,弹窗正常出现;但是如果将alert换成layer.msg则不走if判断。不知道为什么
跪求各位大神看看

 function auditPass(status){
    var checks = $('input[name="orderIndexs"]:checked');
    var status=status;

    if(checks.length==0){
        layer.msg("请至少选择一项", {title : '提示框',icon : 0,time : 3000,offset: '100px',shade: [0.5],scrollbar: false});
        return false;
    }else{
        var ids="";

        //checks.each(function(i){
        for(var i=0;i<checks.length;i++){
            var id= checks[i].value;
            var pstatus = $('#orderStatus_' + id).val();
            if(pstatus == '1') {
                if(i==0) {
                    ids = id;
                } else {
                    ids += (";" + id);
                }
            }else{
                //alert("当前["+id+"]!")
                layer.msg("当前["+id+"]", {title : '提示框',icon : 0,time : 300,offset: '100px',shade: [0.5],scrollbar: false});
            }
         }

可以看看点吗是否错误

不是没走if,估计是报错了

你这个是在for循环了多次调用了。多次调用的问题,可以在for里面设置标记,在循环外面来显示;

layer.msg 后面加return false;或者break;试试

看一下你的layer.js是否引入正确!!

 F12有没有错误呀?

不会不走if的,应该是其他地方的问题。

在条件里面试试console.log("aaaa"),输出一下看看,既然能alert,那么说明进入循环了