输入change()

时间:2017-01-22 06:22:08

标签: jquery

这种方式有效。我正在尝试获取输入pass2以在更改时将值与输入传递进行比较。它没有触发。

jquery的

$( "#pass2" ).change(function() {
if ( ($("#pass2").val()) != ($("#pass").val()) ) {
    $(".pass2").addClass("has-error");
} else {
    $(".pass2").removeClass("has-error");
}   
});

HTML

Pass:
<input id="pass" type="text" name="pass" value="" />
Pass again:
<span class="pass2"><input id="pass2" type="text" name="pass2" value="" /></span>

3 个答案:

答案 0 :(得分:1)

enter image description here事件仅在文本输入失去焦点时触发,因此请使用changeinput事件立即触发。

{{1}}

答案 1 :(得分:1)

你可以在这里查看

jsfiddle它可以在keyup事件中正常使用,您可以使用change,但根据您的要求,密钥更有用..

答案 2 :(得分:0)

您可以在onblur事件中查看确认密码。为此,您需要在onblur id中绑定pass2事件的函数。当然,当您致电addClass('has-error')时,您应该删除课程has-success,否则当您多次尝试时,您的预期结果将不会出现。
N.B:此外,您需要检查两个字段是否为空,就好像两个字段都是空的结果为真。

function checkPass(){
 if($("#pass2").val()!='' && $("#pass").val()!=''){
    if ( ($("#pass2").val()) != ($("#pass").val()) ) {
          $(".pass2").addClass("has-error");
          $(".pass2").addClass("has-success");
          console.log("has-error");// for testing purpose we print it
      } else {
          $(".pass2").removeClass("has-error");
          $(".pass2").addClass("has-succes");
          console.log("has-success"); // for testing purpose we print it
      }
    }else{
          console.log("password field can not be empty");
          // here you can show alert or error msg as you want.
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
Pass:
<input id="pass" type="text" name="pass" value="" />
Pass again:
<span class="pass2"><input id="pass2" onblur="checkPass()" type="text" name="pass2" value="" /></span>

另请参阅jsFiddle