2011-07-27 7 views
0
$("#changePassword").validate({ 
     rules: {  
      newPassword: { 
       required: true    
      }, 
      newPassword2: { 
       required: true,    
       equalTo: "#newPassword" 
      }    
     } 
    }); 

ねえ、これは私の検証コードです。サーバとjqueryでパスワードを確認する

は、そしてこれは、私はそれがこのエラーが発生したとき、それはそうフォームが提出しません作るにはどうすればよい私のパスワードチェック

$('#oldPassword').change(function() { 
     var password = $(this).val(); 
     $.post('/settings/check/oldPassword', { value : password }, function(data) { 

      if (data == 'false') {     
       $('#oldPassword').removeClass('valid'); 
       $('#oldPassword').addClass('error'); 
      } 

     }); 
    }); 

です。私はまた、フォーム要素がクラスエラーを持っていて明らかにそうではない場合、jqueryバリデーションが提出しなかったと考えました。エラークラスは正常に追加されていますが、依然としてフォームを送信できます。助けてくれてありがとう。ここで

EDIT

はフォームです。

 <input type="text" name="oldPassword" placeholder="Old Password" value="" title="Old Password" class="hint" id="oldPassword" size="30" /> 

    <br /> 
    <br /> 
    <input type="password" name="newPassword" placeholder="New Password" value="" title="New Password" class="hint" id="newPassword" size="30" /> 

    <br /> 
    <br /> 

    <input type="password" name="newPassword2" placeholder="Verify Password" value="" title="Verify Password" class="hint" id="newPassword2" size="30" /> 

    <br /> 
    <br /> 
    <input type="submit" id="submitForm" value="Change Password" /> 

答えて

1

$('#oldPassword').submit(function() { 
    var password = $(this).val(); 
    $.post('/settings/check/oldPassword', { value : password }, function(data) { 

     if (data == 'false') {     
      $('#oldPassword').removeClass('valid'); 
      $('#oldPassword').addClass('error'); 
      return false; 
     } 

    }); 
}); 

はEDIT - あなたはremote()を使用する必要があり、リモート・リソースをチェックすることにより、入力の値をvaliateする必要がある場合、あなたは間違いなく考えてプラグインを「混同」しようとするべきではありませんフォームが無効であることを確認してください

+0

これは機能しません。 oldPasswordは単なる入力フィールドであり、フォームではありません。 –

+0

フォームを送信したとき、またはキーを押したときに検証したいのですか?わかりません –

+0

フィールドを変更するときにサーバー上のパスワードを検証する必要があります。新しいパスワードは、jquery validateを使用して検証する必要があります。それはうまく動作します。 jquery Validateは、フォームが送信されないようにします。 jqueryに古いパスワードが良いかどうかを確認するように伝えるだけです。私の編集を見てください。 –

0

あなたは、検証が失敗した場合.submit()なくchange()return falseを使用する必要があるとしています。

あなたが行うことができ
関連する問題