zoukankan      html  css  js  c++  java
  • return false 的其中一种用法

    return false 的具体是做什么的在这里就不多说了,因为我觉得我形容不明白。。。。。避免大家弄混乱,就不给大家添麻烦了~~

      直接上例子:

      1、先看看下面一段代码,指出其中的错误所在:

    //点击全职列表页删除走接口
              $('body').on('click','.qz-teacher-bar-batch .qz-delete', function(event) {
                  var ids=[],
                      continuing = true;
                  $('.qz-lt tr').each(function (index,el){
                    if($(this).find('.check-box').hasClass('on')){//当前区域被选中 classLessononeToOne
                        if($(this).attr('oneToOne') != 0 || $(this).attr('classLesson') != 0){
                  layer.msg('已有一对一或班组课的教师不能被删除');
                  return false;
                }else{
                  ids.push($(
    this).attr('qzId'));
                }
             }
            });
            if(ids.length == 0){ layer.msg('请先选择需要操作的对象',{time:1000}); return false; }
            //ajax:
            $.ajax({
              url:
    'XXXXX',//接口地址
              type: 'XXX',//请求类型
              data: XXX,//参数
              traditional: true,
              dataType:
    "JSON",//数据类型
              success: function(data){}
             });
        });

      错误的地方就在于:

        大家有注意到return false外面有几个括号了吗?就是红色的括号,就是那三个红色的括号。错误就出现在这里,也就是说,return false 的外面有三个括号,但是重点在于return false 只能负责两个括号以内的范围,当超出了这个范围,returnfalse 就不管用了,那returnfalse 不管用的时候怎么办呢?下面就是答案:

      2、接下来我们来看改良后的代码

              //点击全职列表页删除走接口
              $('body').on('click','.qz-teacher-bar-batch .qz-delete', function(event) {
                  var ids=[],
                      continuing = true;
                  $('.qz-lt tr').each(function (index,el){
                    if($(this).find('.check-box').hasClass('on')){//当前区域被选中 classLessononeToOne
                        if($(this).attr('oneToOne') != 0 || $(this).attr('classLesson') != 0){
                            continuing = false;
                        }else{
                            ids.push($(this).attr('qzId'));
                        }
                    }
                });
                  if(!continuing){
                      layer.msg('已有一对一或班组课的教师不能被删除');
                    return false;
                  }
                  if(ids.length == 0){
                      layer.msg('请先选择需要操作的对象',{time:1000});
                      return false;
                  }
                  //ajax: 
                $.ajax({
                     url: 'XXXXX',//接口地址
                    type: 'XXX',//请求类型
                    data: XXX,//参数
                    traditional: true,
                    dataType: "JSON",//数据类型
                    success: function(data){}
                   }); 
              });

       就是这样~~找到一个中介continuing,这样return false 就能起作用了。

  • 相关阅读:
    js函数调用模式
    js闭包和回调
    js原型
    oracle sql优化笔记
    shell脚本学习
    程序与资源管理
    vi/vim学习
    压缩和解压缩
    用户及用户组
    万用字符和特殊字符
  • 原文地址:https://www.cnblogs.com/beyrl-blog/p/7339941.html
Copyright © 2011-2022 走看看