2016-09-27 9 views
0

私の問題は、パスワードが確認パスワードと一致しないときにテキストフィールドにツールチップを表示したいということです。パスワード一致ツールチップが動作しない

これは私のツールチップのコードです。他は機能していますが、パスワードのマッチングはここ

function validateContact() { 
    var valid = true; 
    $("#container input[required=true], #container textarea[required=true]").each(function(){ 
    $(this).removeClass('invalid'); 
    $(this).attr('title',''); 
    if(!$(this).val()){ 
     $(this).addClass('invalid'); 
     $(this).attr('title','This field is required'); 
     valid = false; 
    } 
    if($(this).attr("type")=="email" && !$(this).val().match(/^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/)){ 
     $(this).addClass('invalid'); 
     $(this).attr('title','Enter valid email'); 
     valid = false; 
    } 

// for password match 
     if ($("#Password").val() != $("#ConfirmPassword").val()) {  

      $(this).addClass('invalid'); 
      $(this).attr('title','Password does not Match'); 
      valid = false; 
    } 
// end of password match 

    }); 
    return valid; 
} 

    $(function() { 
    $(document).tooltip({ 
    position: {my: "left top", at: "right top"}, 
    items: "input[required=true], textarea[required=true]", 
     content: function() { return $(this).attr("title"); } 
    }); 
    }); 

は私のフォームコードではありません。

<input type="password" class="form-control" id="Password" tabindex=7 name="Password" placeholder="Password" required="true" > 

<input type="password" class="form-control" id="ConfirmPassword" tabindex=8 name="ConfirmPassword" placeholder="Confirm Password" required="true"> 

私はこれを解決するためにいくつかの助けを必要としています。

+1

の変更にconsole.logを試してみてください。ヴァル()== $(」 #ConfirmPassword ")。val()) - ==の代わりに!=を使うべきではありませんか? – Danmoreng

+0

それは動作しません..iそれを変更します。 :(ページはロードされますが、データは挿入されません) –

+0

コードをデバッグしようとしましたか?つまり、ここには多くの可能性があります... – Javier

答えて

0

ValidateContract関数の内部にリスナーがありますか?あなたはそれをどこから呼んでいますか($( "#パスワード")場合

は... IDを通じて、入力に直接リスナーを入れてツールチップを表示/メッセージ

$(document).on('keyup', '#ConfirmPassword', function(){ 
    if ($("#Password").val() == $(this).val()) 
     console.log("pass are equal"); 
    else 
     console.log("pass are not equal D:") 
}); 
+0

実際に '#ConfirmPassword'と'#Password'の両方でリスナーが必要になります。パスワードを "blahblahblah"にしてから、 "blahblah"を確認します - 最後に 'x'を入力します - ConfirmPassword" blahblahblahx "で入力を続け、パスワードは一致しませんがパスワードに戻り、最後に 'x'が付いていますが、今は一致していますが、 '#Password'にリスナーなしでは検出されません。いずれにしても、' .on(change、...) 'をチェックします。 –

+0

時間です...質問のコードが期待どおりに機能しない場合、私は示唆することはできません他の目的のためにもっとコードを追加する... –

+0

真実、私は大声で考えていた。 –

関連する問題