jquery validatorプラグインを使用して、動的に作成された名前属性を使用してルールを割り当てる方法は?

StackOverflow https://stackoverflow.com/questions/2700295

質問

これが問題です:

使用するeコマースシステムは、購入した各製品のラインアイテムを生成します。 Line Itemの数量入力は、名前属性「QTY0」、「QTY1」、「QTY2」などを与えます。

これらのQTYX入力が有効性を確認する必要がありますが、名前属性をクラスのような別の属性の相対属性として渡すか、正規表現を検証プラグインに渡してすべての数量フィールドを見つける方法がわかりません。

これが検証コードです:

var validator = $("#formName").validate({
    rules: {
        qty: { customMethod: true}// qty
        },//rules

    messages: {
        qty: {customMethod: "NOPE"}
    },

    errorPlacement: function(error, element) {
            error.appendTo("#itemQuantityError");
    },

});

生成される入力のサンプルは次のとおりです。

<td ><input name="qty1" value="6" size="5"></td>

ありがとうございました!!

役に立ちましたか?

解決

ルールとメッセージを動的に生成できます。

var rules = new Object();
var messages = new Object();
$('input[name^=qty]:text').each(function() {
    rules[this.name] = { required: true };
    messages[this.name] = { required: 'This field is required' };
});

var validator = $("#formName").validate({
    rules: rules,
    messages: messages,
    errorPlacement: function(error, element) {
        error.appendTo("#itemQuantityError");
    }
});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top