2010-12-17 20 views
0
$("#submit-signin-button").click(function() { 
    if($.trim($("#foo").val()) === ""){ 
     $(".error-message-uname").show(); 
    } 
    if($.trim($("#bar").val()) === ""){ 
     $(".error-message-bar").show(); 
    } 

    return false; 

検証は正しいですか?正しいフォームを送信した後は、データをURLに送信しないためです。jquery検証エラー

答えて

2

問題は、常にこれからfalseを返すことです。フォームを投稿しない場合は、falseを返すだけです。

改訂された質問に基づく非常に基本的な検証システムです。エラーが発生しない限り、変数は最初はtrueに設定されています(すべて正常です)。フォームの検証にtrueを返すと、フォームが送信されます。シンプルなものについては

$("#submit-signin-button").click(function() { 

    var isValid = true; 

    if(!$.trim($("#foo").val()){ 
    $(".error-message-uname").show(); 
    isValid = false; 
    } 
    if(!$.trim($("#bar").val())){ 
    $(".error-message-bar").show(); 
    isValid = false; 
    } 

    return isValid; 
} 

、これは完全に罰金ですが、あなたが使用できるいくつかの検証jQueryのプラグイン(like this one)があります。

ヒント(わかっているように)、空の文字列はJavaScriptのfalseyと見なされます。したがって、$.trim($("#bar").val() === ""!$.trim($("#bar").val()に置き換えることができます。

+0

検証する別のフィールドがある場合はどうなりますか?私は質問を更新しました。 – user426795