0

我正在使用fuelux spinner jquery 插件。我设置了一个简单的微调器,如下所示:

$('#spinner3').spinner({value:3, step: 1, min: 0, max: 10, speed: "medium"});

效果很好,但是,我注意到您可以毫无问题地手动输入超出范围的值。例如,我可以在上面的示例中手动输入 20(最大为 10)。我不能再使用按钮升值,但我可以降值。一旦回到我的范围内,最小值/最大值就会再次出现。

我看到文档中有一个“更改”事件,但我似乎无法让它工作以防止手动输入超出我的范围。我在想一些简单的事情,比如如果 value > max 然后 value = max 和 min 相同。

    //ensure min and max on manual entry
    $("#spinner3").on('changed', function() {
        if ( $(this).val() > 'max' ) {
            $(this).val( 'max' );
        }
        if ( $(this).val() < 'min' ) {
            $(this).val( 'min' );
        }
    });
4

1 回答 1

1

弄清楚了 :

var handleSpinners = function () {

    $('#spinner3').spinner({value:3, step: 1, min: 0, max: 10, speed: "medium"});

    $('#spinner3').on('change', function() {
        var value = $('#spinner3').spinner('value');
        if ( value > 10 ) {
            $("#spinner3 .spinner-input").val(10);
        }
        ... and same for min
    });
}
于 2013-12-21T19:43:50.133 回答