与操作也能这么用

 

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

 

场景:

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

代码:

  

ExpandedBlockStart.gif 代码
 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, "邮件""......") 等等很多都可以。

 

 

ExpandedBlockStart.gif 代码
         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);
        }

 

 

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

 

 

posted on 2010-09-06 11:40  管宇 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/winner2009/archive/2010/09/06/1818919.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值