2016-08-05 9 views
0

値の配列に基づいてフォームを検証する最も簡単な方法を探しています(シリアル番号なので、このような配列があります:abc123、xyz456 、fghqweなど)変数値の配列に基づいてフォームを検証する方法

いくつかのjQuery/Bootstrapバリデータプラグインを調べましたが、それを思いつきませんでした。

だから、配列内のフィールド場合は、動的にチェックするコード=項目のいずれかの私はワードプレスを使用してい

、その後の成功は+

に関して、 クレイグ

+2

は** [スニペット](HTTPSであなたのコード(HTML/CSS/JS)の**最小限の作業例を投稿してください。 //blog.stackoverflow.com/2014/09/introducing-runnable-javascript-css-and-html-code-snippets/)。 [mcve]と[ask]を参照してください。 – vanburen

答えて

0

こんにちはクレイグ、あなたがしたい場合をブートストラップ必要に応じて入力を検証する Jqueryの検証では、カスタムメソッドのサポートが提供されています。

あなたが好き

$.validator.addMethod("custom_function_name", function(value, element, param){ 

の下にカスタムメソッドを作成し、

あなたは以下のようなカスタム検証機能を使用することができますあなたの場合は
rules : { 
    property_name : custom_function_name 
} 

以下のような検証方法のルールの一部からそれを呼び出すことができます(サンプルコード)

HTML:

<form id="testForm"> 
    <input type="text" name="firstName"/> 
    <input type="text" name="lastName"/> 
    <input type="submit"> 
</form> 

はJQuery:

$("#testForm").validate({ 
    rules : { 
    firstName : { required : true, 
        presentInList : true 
    }, 
    lastName : { required : true, 
        presentInList : true 
    } 
    }, 

    message : { 
    firstName : { required : "Please enter" 
    }, 
    lastName : { required : "Please enter" 
    } 
    }, 

    submitHandler: function (form) { 
     console.log("Ok"); 
    } 
}); 


var yourList = ["praksh", "Abhi"] 

$.validator.addMethod("presentInList", function(value, element, param){ 
    if($.inArray(value, yourList) != -1) { 
     return true; 
    } else { 
     return false; 
    } 
}, "not in list"); 

デモ:https://jsfiddle.net/Prakash_Thete/cncLa71b/

+0

ありがとうございます!できます !!ただの簡単な質問:私はそれを正しくしようとしていますか?私はすでに変数に格納されているPHP変数に格納された配列を持っています。 abc、xyz、etc.カスタムページの送信(wordpress/woocommerceフレームワーク)では、データが配列で正しいかどうかをチェックするこのフォームがあります。そうであれば、システムは新しいページにリダイレクトし、PHPのWooCommerceフレームワーク –

+0

で使用するために、SESSIONを通じて渡された変数を渡します。Craigソリューションの変更を実装しようとしているフローによって、しかし、key:valのペアに値を格納することを頼むかもしれませんが、配列全体を検索するのではなく、入力と一致する配列フィールドを特定するのに役立ちます(配列が長すぎると仮定します)。 ;) –

関連する問題