2012-04-26 3 views
0

私はクライアント側の検証のためにjQuery検証エンジンを使用したWebアプリケーションを持っています。 このアプリケーションは、ユーザーが基本的にいくつかのIDを入力する必要があるレコードを保持します。 私はユーザーが入力するすべてのシリアル番号の配列を維持しています。jQueryの検証ルールを作成する方法 - 配列にはない値を入力します。基本的に値をユニークにするには?

これで、ユーザーが入力したIDの値がすでに入力されている必要があります。つまり、配列にすることはできません。

例:ids = {1,2,3,6,8}、IDの次の値は配列IDの値にはできません。このようなルールを検証エンジンに書きたいと思っています。

var validator = $("#formId").validate({ 
     rules: { 
      uniqueId: <Rule to write here ???>, 
     }, 
     messages: { 
      uniqueId: "Entered ID already exists", 

     }, 
    }); 

親切にお手伝いします。 誰かがチュートリアルや何かのリンクを持っていて、可能なすべての妥当性検証ルールの実装を学ぶことができたら...それは素晴らしいでしょう

ありがとうございます。

答えて

1

私はjQuery検証では一度も働いたことはありませんが、これはあなたを始めにするはずです。 まず次にjqueryの検証ルールに追加し、検証機能に

function validateID(value, element) { 
    if(ids.indexOf(value) > -1) { 
     //value does exist in ids 
    } 
    else { 
     //value does not exist in ids 
     //(maybe add it to ids?) 
    } 
} 

を作成します。

$.validator.addMethod("idRule", validateID, "message"); 

をし、ルールを作成します。

var validator = $("#formId").validate({ 
    rules: { 
     uniqueId: { 
      idRule: true 
     } 
    }, 
    messages: { 
     uniqueId: "Entered ID already exists", 

    }, 
}); 

は、ここで私はこれの多くを見つけblog postですあなたはそれが役に立つかもしれません。

+0

これはちょうど正常なjavascriですptの検証.. jQueryの検証エンジンに入れることができるルールが必要です。私が間違っている場合は正しい。 – dhroove

+0

あなたは正しいですが、私はその質問を誤解しました。私は自分の答えを編集した – kaveman

関連する問題