zoukankan      html  css  js  c++  java
  • 与操作也能这么用

    我在jquery  上看到的一个使用&&操作的例子(在jquery-ui 下面 demos/dialog/modal-form中),感觉不错,这是我的实现,如下:

    场景:

      假如我们有两个文本框需要验证非空。

    代码:

      

    代码
     1 
     2 //validUserName  validPwd 是两个div,分别显示错误信息,通常我们放在用户名和密码这两个文本框的的后面。
     3 
     4 function register() {
     5 
     6             var userName = $('#txtUserName').val();
     7             var pwd = $('#txtPasword').val();
     8 
     9             var bValid = true;
    10            
    11             bValid = bValid && checkNull(userName, "用户名""validUserName");            
    12             bValid = bValid && checkNull(pwd, "密码""validPwd");
    13             
    14                         
    15             if (bValid) {
    16                 return true;
    17             }
    18             else {
    19                 return false;
    20             }
    21         }

    我们可以看到第11 12行,  也就是说只要 checkNull ()函数为返回假,我们开始定义的bValid 求与后也会为假。即整个函数返回假。

    其实这也没有什么,我们完全可以使用if  else 来解决。但是问题来了如果有很多的文本框需要验证,那是不是会需要很多的if else啊。

    使用&&就没有这么麻烦了 我们完全可以在 第12行下面 写 bValid = bValid && checkNull(pwd, "邮件""......") 等等很多都可以。

     

     

    代码
            function checkNull(t, n, obj) {

                
    if (t == "") {
                    updateTips(
    "忘填" + n + "了吧!",obj);
                    
    return false;
                } 
    else {
                updateTips(
    "",obj);
                    
    return true;
                }

            }

            
    function updateTips(t, obj) {
                
    var tips = $("#" + obj);
                tips.text(t);
            }

    看起来复杂了,但是心里更清楚了。这难道就是重构的结果?

    作者:管宇

    欢迎转载,请标明出处。

  • 相关阅读:
    为啥负利率国债有人抢着买?因为时代变了
    微增长时代
    U盘插入电脑后图标是灰色的,打开提示“请将磁盘插入驱动器”
    计算shell 脚本的执行时间
    win10系统应用商店打开后无法联网 代码: 0x80131500 的解决办法
    Jetbrains家的软件都可用的激活码-pycharm
    postman中x-www-form-urlencoded与form-data的区别
    升级Gogs版本
    上海对售价超1499元的茅台酒即没收并另处罚款
    提高收入的根本途径
  • 原文地址:https://www.cnblogs.com/winner2009/p/1818919.html
Copyright © 2011-2022 走看看