2016-11-01 90 views
-2

我正在創建一個客戶端驗證(是的,這似乎沒有任何用途,但它確實)。問題是我對js不太好,我的代碼不工作。HTML和Javascript客戶端認證

•我試圖做到:

用戶類型「ABCD」作爲提交密碼和點擊。 Javascript檢查密碼是否爲「ABCD」,如果是,則繼續,如果不是,則顯示錯誤消息。

•驗證碼:

HTML:

<div class="login"> 
    <div class="login__check"></div> 
    <div class="login__form"> 
    <div class="login__row"> 
     <svg class="login__icon pass svg-icon" viewBox="0 0 20 20"> 
     <path d="M0,20 20,20 20,8 0,8z M10,13 10,16z M4,8 a6,8 0 0,1 12,0" /> 
     </svg> 
     <input type="password" class="login__input pass" placeholder="Password"/> 
    </div> 
    <button type="button" class="login__submit">Sign in</button> 
    <p class="login__signup">Don't have an account? &nbsp;<a>Sign up</a></p> 
    </div> 
</div> 

JAVASCRIPT:

$(document).on("click", ".login__submit", function (e) { 

    var password = "ABCD"; 
    //this is your password input box 
    if ($('input[pass] .login__input').val() == password) { 
     if (animating) 
      return; 
     animating = true; 
     var that = this; 
     ripple($(that), e); 
     $(that).addClass("processing"); 
     setTimeout(function() { 
      $(that).addClass("success"); 
      setTimeout(function() { 
       $app.show(); 
       $app.css("top"); 
       $app.addClass("active"); 
      }, submitPhase2 - 70); 
      setTimeout(function() { 
       $login.hide(); 
       $login.addClass("inactive"); 
       animating = false; 
       $(that).removeClass("success processing"); 
      }, submitPhase2); 
     }, submitPhase1); 

    } else { 
     alert('Wrong pass!'); 
    } 

}); 

確切的問題:

index.js總是產生一個'錯誤的傳球'信息。所以這意味着if ($('input[pass] .login__input').val() == password) {永遠不會是真的。爲什麼從未如此,即使我使用「ABCD」?

謝謝大家!

+1

您知道,這種認證與無認證一樣強大,對嗎? – Cerbrus

+1

是的,我是。我想要完成的是一種可以認證的形式,但事實上並非如此。有效。 – Yahboysurge

+1

不要破壞你的帖子。 –

回答

2

這是因爲這個選擇是壞:

$('input[pass] .login__input') 

下面是正確的:

$('.login__input.pass') 
+0

謝謝,你是MVP! – Yahboysurge

0

二者必選其一

$('input[type=password]') 

$('.login__input.pass') 

作爲選擇器。