2011-08-12 5 views
3

を提出し、検証、私は私が私の前に非常に奇妙なシナリオを持っているjQueryの検証プラグイン(http://bassistance.de/jquery-plugins/jquery-plugin-validation/任意の特定のための唯一のいくつかのフィールドはボタン

を使用しています。

は、私は5種類で、それぞれのボタンを提出するために、私は

セイ「更新アカウントのいくつかのフィールド(とないすべてのフィールド)を検証する必要がある、今すぐボタン

<form id="frm1" name="frm1" method="post" action="save.php"> 
    ------- input fields here--- 
    <input type="submit" name="submit" value="update account info"> 

    ------- input fields here--- 
    <input type="submit" name="submit" value="update address info"> 

    ------- input fields here--- 
    <input type="submit" name="submit" value="update credit-card info"> 

    ------- input fields here--- 
    <input type="submit" name="submit" value="update bank info"> 

    ------- input fields here--- 
    <input type="submit" name="submit" value="update other info"> 
</form> 

を提出し、一つの形を持っています情報」私は次のIDで、次の入力フィールドを検証する必要があり、提出:

cust_fname 
cust_lname 
cust_age 

セイのために 『更新その他の情報』を提出、私は次のIDで、次の入力フィールドを検証する必要があります:

married 
childerns 

私はどのようにして次のことを達成できますか?

答えて

3

5つの別々のフォームを作成するのがこれを行う最も簡単な方法です。次に、各フォームに異なる特定の検証をバインドすることができます。

また、送信ボタンのクリックごとに検証をバインドすることもできます。次に、jQueryを使ってあなたがこれをバインドすることができ

<input type="submit" id="button_1" name="submit" value="update account info"> 

$("#button_1").live("click", function() { 
    $("#frm1").validate({ 
     rules: { 
      cust_fname: "required", // of course set different options for every field 
      cust_lname: "required", 
      cust_age: "required" 
     } 
    }); 
}); 

、すべてのボタンのためにこれを行う は、あなたがあなたのサブミットを更新すると仮定します。

編集:ライブは廃止されました。

$("#button_1").on("click", function() { 
    $("#frm1").validate({ 
     rules: { 
      cust_fname: "required", // of course set different options for every field 
      cust_lname: "required", 
      cust_age: "required" 
     } 
    }); 
}); 
+1

['live()'はjquery 1.7以降廃止され、1.9で削除されました。](http://api.jquery.com/live/)。代わりに['on()'](http://api.jquery.com/on/)を使用してください。 –

関連する問題