2012-05-10 17 views
0

1.)我有一個代碼腳本來檢查用戶是否輸入了正確的電子郵件格式;在我的應用程序中檢查錯誤

if (val.search("[a-z][email protected][a-z]+[.][a-z]+") == -1) 
          Ext.Msg.alert("Error", "Invalid e-mail address!!"); 

此代碼是不正確的用戶名和域名可以採取在Numbers爲好。那麼,我如何糾正代碼?

2.)在視圖中,我有2個字段;密碼並重新輸入密碼。我如何檢查這兩個是否相等?

{ 
          xtype:'textfield', 
          name:'password', 
          label:'Password' 
          }, 
          { 
          xtype:'textfield', 
          name:'rpassword', 
          label:'retype password' 
          } 
          ] 
        }, 
        { 
        xtype:'button', 
        id:'pwdButton', 
        text:'register', 
        ui:'confirm' 
} 

3)是否有可能做的Ajax化的錯誤檢查,這意味着當用戶進入到下一個字段(彈出錯誤信息,而不必等到他點擊按鈕Register

回答

2
  1. 對於執行email驗證,你可以看看我的下面的代碼。如果usernamedomain nameNumbers,它也可以解決。

    { 
        xtype: 'emailfield', 
        name: 'email', 
        label: 'Email', 
        id: 'emailId', 
        placeHolder: '[email protected]', 
        required: true, 
        listeners: { 
        blur: function(thisTxt, eventObj) { 
          var emailValue = thisTxt.getValue(); 
          var atpos = emailValue.indexOf("@"); 
          var dotpos = emailValue.lastIndexOf("."); 
          if (atpos<1 || dotpos<atpos+2 || dotpos+2>= emailValue.length) { 
           Ext.Msg.alert("Not a valid e-mail address"); 
          } else { 
           Ext.Msg.alert('Valid','You entered a valid email address'); 
          } 
        } 
        } 
    } 
    
  2. 因爲如果用戶正確地重新輸入相同的密碼檢查,可以檢查出下面的代碼,」

    { 
        xtype:'textfield', 
        name:'password', 
        id: 'pswd1', 
        label:'Password' 
    }, 
    { 
        xtype:'textfield', 
        name:'rpassword', 
        id: 'pswd2', 
        label:'retype password', 
        listeners : { 
         blur : function() { 
          var prevPassword = Ext.getCmp('pswd1').getValue(); 
          var rePassword = Ext.getCmp('pswd2').getValue(); 
          if(prevPassword == rePassword) { 
           Ext.Msg.alert('Success','Passwords match'); 
          } else { 
           Ext.Msg.alert('Failed','Passwords entered do not match'); 
           Ext.getCmp('pswd2').focus(); 
          } 
         } 
        } 
    } 
    
  3. 意味着當用戶進入到下一個字段,彈出錯誤信息(而不必等到他點擊註冊按鈕)

你要聽爲blur任何表單域的事件。所以,當這個p'cular字段丟失focus時,它會調用blur()函數,然後您可以執行驗證而不必按Register按鈕。

listeners : { 
    blur : function() { 
     // Validation code goes here . 
     .... 
     .... 
    } 
} 
相關問題