jQueryUI Slider - 获取初始滑块值

时间:2011-11-04 02:56:36

标签: javascript jquery html css jquery-ui

我实现了jQueryUI滑块并希望显示min& 2个不同div中的最大滑块值。 div中的值将在用户调整滑块时更新。 div也会显示滑块的初始值。

问题: div显示[object object]作为初始值,但在用户调整滑块时显示正确的更新值。我需要一些帮助来显示初始值。

jQuery代码:

$("#filter_submenu_rent").slider({
    range: true,
    min: 0,
    max: 10000,
    values: [ 75, 300 ],
    slide: function( event, ui ) {
        $( "#rent_min" ).html( "Min: $" + ui.values[ 0 ] );
        $( "#rent_max" ).html( "Max: $" + ui.values[ 1 ] );
    }
})
$( "#rent_min" ).html( "Min: $" + $( "#slider_rent" ).slider( "values", 0 ));
$( "#rent_max" ).html( "Max: $" + $( "#slider_rent" ).slider( "values", 1 ));

HTML代码

<div id="filter_submenu_rent">
            <div id="rent_min"></div>
            <div id="slider_rent"></div>
            <div id="rent_max"></div>
</div>

jQuery代码(另一种尝试) 使用

时,最初2个div中没有​​任何内容

$("#filter_submenu_rent").slider({
    range: true,
    min: 0,
    max: 10000,
    values: [ 75, 300 ],
    slide: function( event, ui ) {
        $( "#rent_min" ).html( "Min: $" + ui.values[ 0 ] );
        $( "#rent_max" ).html( "Max: $" + ui.values[ 1 ] );
    },
    create: function(event, ui) {
        $( "#rent_min" ).html( "Min: $" + ui.values[ 0 ] );
        $( "#rent_max" ).html( "Max: $" + ui.values[ 1 ] );
    }
})

2 个答案:

答案 0 :(得分:2)

我看到的主要问题是你有两个不同的对象作为滑块:

定义为$("#filter_submenu_rent").slider,但后面的代码为:$( "#slider_rent" ).slider

工作示例:http://jsfiddle.net/4tDjZ/1/

答案 1 :(得分:0)

有些人可能会发现这有点hacky,但我发现你可以将自定义属性放入滑块选项对象中,并像以后任何其他滑块选项一样访问它们。

$('#myslider').slider({min: 0, max: 10, value: 5, myinitval: 5});

// will remain 5, unless your event handlers change it
$('#myslider').slider('option', 'myinitval');