2014-10-16 4 views
3

jquery와 서로 일치하도록 두 입력의 유효성을 검사하려고하는데이를 수행 할 수있는 방법을 찾지 못했습니다. jquery 두 입력 값을 얻으려면 만들 수 없습니다, 따라서 그들은 서로 매치하지 않는 경우 확인할 수 없습니다. 입력이 익숙하지 않는 사람을 위해, 그래서 codeignither로 만들어집니다 - 첫 번째 입력의 ID가 '패스'이고 두 번째는 'PASS2'암호가 jquery와 일치하는지 확인하십시오.

<tr> 
      <td>choose a password:</td> 
      <td><?= form_password('password', '', 'placeholder="choose a password" required="required" id="pass"') ?></td> 
     </tr> 
     <tr> 
      <td>re-type the password:</td> 
      <td><?= form_password('password2', '', 'placeholder="re-type your password" required="required" id="pass2"') ?></td> 
     </tr> 

스크립트입니다 -

$(document).ready(function(){ 
    var pass = $('#pass').val(); 
    var pass2 = $('#pass2').val(); 

    $('#pass2').focusout(function(){ 
     if(pass != pass2){ 
      alert('the passwords didn\'t match!'); 
     } 

    }); 
}); 
+0

봐,하지 ... 같은 코드를 작성해야하기 때문에. – Quentin

답변

10

사용자가 문서를 준비 할 때 값을 읽었으므로 사용자가 값을 읽지 않았으므로이 값을 읽어야합니다. 그것을 초점 밖으로 이동하십시오.

$(document).ready(function(){ 
    $('#pass2').focusout(function(){ 
     var pass = $('#pass').val(); 
     var pass2 = $('#pass2').val(); 
     if(pass != pass2){ 
      alert('the passwords didn\'t match!'); 
     } 

    }); 
}); 
+0

+1, 당신은 전에 저에게 답을 썼습니다. :) –

4

해당 템플릿 언어가 무엇이든 HTML에

$('#pass2').focusout(function(){ 
    // get values on the focusout event 
    var pass = $('#pass').val(); 
    var pass2 = $('#pass2').val(); 
    // test them... 
    if(pass != pass2){ 
     alert('the passwords didn\'t match!'); 
    } 

}); 
관련 문제