jQuery UI。创建后将Slider值推送到块中

时间:2013-09-20 15:23:30

标签: javascript jquery jquery-ui

我正在尝试在创建后将范围滑块值推入2个块。

$(document).ready(function() {
$("#slider-range").slider({
    step: 10,
    range: true,
    min: 10,
    max: 500,
    values: [100, 400],
    create: function(event, ui) {
        $('#minResult').text(ui.values[0]+'$');
        $('#maxResult').text(ui.values[1]+'$');
    },
    slide: function(event, ui) {
        $('#minResult').text(ui.values[0]+'$');
        $('#maxResult').text(ui.values[1]+'$');
    },
    stop: function(event, ui) {
        $('#priceMin').val(ui.values[0]);
        $('#priceMax').val(ui.values[1]);
        calcItems();
    }
});
});

Slide和Stop回调可以正常工作,但Create不起作用。 Conosole.log(ui)返回undefined。请帮助)

1 个答案:

答案 0 :(得分:0)

来自create事件的jQuery滑块文档:

  

注意:ui对象为空,但为了与其他对象保持一致而包含在内   事件

参考:http://api.jqueryui.com/slider/#event-create

您可以使用以下方法直接从滑块UI对象获取值:

$("#slider-range").slider("values")[0];

代码:

$(document).ready(function () {
    $("#slider-range").slider({
        step: 10,
        range: true,
        min: 10,
        max: 500,
        values: [100, 400],
        create: function (event, ui) {
            $('#minResult').val($("#slider-range").slider("values")[0] + '$');
            $('#maxResult').val($("#slider-range").slider("values")[1] + '$');
        },
        slide: function (event, ui) {
            $('#minResult').val(ui.values[0] + '$');
            $('#maxResult').val(ui.values[1] + '$');
        },
        stop: function (event, ui) {

        }
    });
});

演示:http://jsfiddle.net/IrvinDominin/gFLsz/