密码不匹配时禁用表单提交按钮

时间:2013-02-23 07:41:58

标签: php javascript

我正在试图找出我应该包含js代码的位置,当密码不匹配时我禁用表单提交按钮。

HTML:

<form name=passform class="form-horizontal-signup" method="post" action="login.php" >



    <fieldset>
    <legend>Sign Up for MyVibes</legend>
    <input type="password" class="input-xlarge" placeholder="Password" name="password" id="password" onKeyUp="verify.check()" />
    <input type="password" class="input-xlarge" placeholder="Retype Password" name="repassword" id="repassword" onKeyUp="verify.check()"/></fieldset>
    <div id="password_result">&nbsp; </div><br />
    <button type="submit" input name="btnSignUp" id="btnSignUp" class="btn btn-inverse" disabled="disabled"/>Sign Up</button>
    </form>
    </div>

获取变量:

<SCRIPT TYPE="text/javascript">


            verify = new verifynotify();
            verify.field1 = document.passform.password;
            verify.field2 = document.passform.repassword;
            verify.result_id = "password_result";
            verify.match_html = "Passwords match.";
            verify.nomatch_html = "Please make sure your passwords match.";

            // Update the result message
            verify.check();

            //
            </SCRIPT>

和功能:

function verifynotify(field1, field2, result_id, match_html, nomatch_html) {
 this.field1 = field1;
 this.field2 = field2;
 this.result_id = result_id;
 this.match_html = match_html;
 this.nomatch_html = nomatch_html;

 this.check = function() {

   // Make sure we don't cause an error
   // for browsers that do not support getElementById
   if (!this.result_id) { return false; }
   if (!document.getElementById){ return false; }
   r = document.getElementById(this.result_id);
   if (!r){ return false; }

   if (this.field1.value != "" && this.field1.value == this.field2.value) {
     r.innerHTML = this.match_html;
      $("#btnSignUp").prop("disabled", false);

   } else {
     r.innerHTML = this.nomatch_html;
      $("#btnSignUp").prop("disabled", true);

   }
 }
}

也许我错位于我应该放置$(“#btnSignUp”)。prop(“disabled”,true);码?

2 个答案:

答案 0 :(得分:1)

尝试

$("#btnSignUp").attr("disabled", "disabled");

答案 1 :(得分:0)

这应该有效..

if (this.field1.value != "" && this.field1.value == this.field2.value) {
 r.innerHTML = this.match_html;
  $("#btnSignUp").removeAttr("disabled");

} else {
 r.innerHTML = this.nomatch_html;
  $("#btnSignUp").attr("disabled", "disabled");
}
相关问题