2014-08-27 108 views
1

equalTo驗證下面是我的形成具有密碼和確認密碼字段與jQuery驗證

<div class="form-group"> 
    <label class="control-label">password</label>    
    <input type="text" class="form-control" name="password" 
      data-validate="minlength[8]" 
       data-message-required="email is required" placeholder="password"> 
</div> 

<div class="form-group"> 
    <label class="control-label">confirm password</label>    
    <input type="text" class="form-control" name="password_confirm" 
     data-validate="minlength[8],equalTo[password]" 
      data-message-required="email is required" placeholder="confirm password"> 
</div> 

下面是我的驗證領域的一部分。

if (params = rule.match(/(\w+)\[(.*?)\]/i)) { 
    if ($.inArray(params[1], ['minlength', 'equalTo']) != -1) { 
     opts['rules'][name][params[1]] = params[2]; 
     message = $field.data('message-' + params[1]); 
     if (message) { 
      opts['messages'][name][params[1]] = message; 
     } 
    } 
} 

minlength[8]似乎完美地工作,但是當我嘗試符合我password與確認密碼它不工作。我嘗試以三種方式傳遞名稱屬性,但它們都不起作用。

equalTo[password] 
equalTo["password"] 
equalTo["#password"] 

而且誰能告訴我這是什麼正則表達式做/(\w+)\[(.*?)\]/i)

回答

1

equalTo["#password"]的參數是#password

#password是一個jQuery選擇器,匹配一個元素與id="password"。但是,我的password字段中看不到id屬性。嘗試添加一個...

<input type="text" class="form-control" id="password" name="password" .... 

報價OP

「還有誰能告訴我這是什麼正則表達式做/(\w+)\[(.*?)\]/i

見:http://regexr.com/39d43