使用jQuery插件验证,如何利用动态创建的name属性分配规则?(Using jQuery val

2019-10-21 06:59发布

这里的问题:

我们使用的电子商务系统为每个购买产品的订单项。 它给行项目的数量输入的name属性“qty0”,“qty1”,“qty2”,等为行项目走下来的页面。

我需要检查这些qtyX投入的有效性,但我不知道如何通过其中的name属性的其他属性的像一类的相对属性,或者通过一个正则表达式的验证插件找到的所有数量字段。

下面是验证码:

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>

谢谢!!

Answer 1:

您可以生成规则和动态消息:

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");
    }
});


文章来源: Using jQuery validator plugin, how to use dynamically created name attributes to assign rules?