jQuery验证 - 运行时更改最小值和最大值检查

3
我能在运行时更改数字验证的最小值和最大值吗?
我使用jQuery验证插件
我的简化布局和结构以演示它应该如何工作。当我更改最大范围的值时,数字字段的最大范围验证也必须更改。

jsFiddle: http://jsfiddle.net/nXqd/qC2Ya/3/

谢谢


3
你能否发布你当前的实现,相关的脚本和 HTML?甚至可以在 jsfiddle.net 上提供一个演示页面吗? - Nope
@FrançoisWahl添加了jsfiddle :) - Dzung Nguyen
2个回答

6

使用另一篇 Stack Overflow 帖子中的这个答案作为指南,我能够修改你的代码并且让它正常工作。

// Bind initial rule;
bindRangeRule(1, 2);

$("input[name='change-range']").on("keyup", function() {
    var value = $(this).val();

    // add some validation here off course to ensure only numbers are accepted.
    // You can do that by checking the event.keyCode values I believe.
    // If an invalid value was specified you can throw an alert
    // or simply clear the input field and return false. Or similar.

    // re-bind range rule
    bindRangeRule(1, parseInt(value));
});

function bindRangeRule(from, to) {
    var settings = $('form').validate().settings;

    delete settings.rules.number;

    settings.rules.number = {
        required: true,
        range: [from, to]
    }
};

你很棒。谢谢。 - vin
演示返回404。 - Braian Mellor

3

2
OP希望在运行时更改此设置,例如当发生某些事件时。 - Hazem Salama
抱歉我太快了,我发布了我的jsfiddle,这样你可以更容易地查看它。 - Dzung Nguyen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接