滑块 NoUiSlider 值保持范围
Slider NoUiSlider value keep range
我在提交表单时无法保持 NoUiSlider 范围滑块的值可见。
所以人们可以设置一个范围,然后点击提交按钮。该范围滑块的值可以通过表单很好地提交,但是滑块的范围会更改为新的设置值。
所以我将范围设置为例如。 0 - 500。当有人将范围设置为例如。 100-400 然后提交表单然后范围更改为 100-400。所以人们无法将范围改回 0 - 500。
所以我的问题是:
我怎样才能保持范围不变(所以 0 -500)但将手柄移动到设定值(所以 100 - 400)?
所以我有这个:
<form>
<input type="hidden" name="max" value="0" id="filter_form_max" />
<input type="hidden" name="min" value="500" id="filter_form_min" />
<div id="slider-handles"></div>
<input type="submit" class="price-btn" />{{ 'Set price' | t }}
</form>
和 JS:
$(function() {
var handlesSlider = document.getElementById('slider-handles');
noUiSlider.create(handlesSlider, {
start: [ 0, 500 ],
format: wNumb({
decimals:0,
thousand: '.'
}),
range: {
'min': [ 0 ],
'max': [ 500 ]
},
tooltips: true,
});
handlesSlider.noUiSlider.on('update', function( values, handle ) {
var minVal = document.getElementById('filter_form_min');
var maxVal = document.getElementById('filter_form_max');
minVal.value = values[0]
maxVal.value = values[1]
});
});
您只需更改起始数组的值即可。
尝试通过以下方式更改这些内容。它对我有用。
//---- some code ---
noUiSlider.create(handlesSlider, {
start: [ 100, 400 ],
//-----
我在提交表单时无法保持 NoUiSlider 范围滑块的值可见。
所以人们可以设置一个范围,然后点击提交按钮。该范围滑块的值可以通过表单很好地提交,但是滑块的范围会更改为新的设置值。
所以我将范围设置为例如。 0 - 500。当有人将范围设置为例如。 100-400 然后提交表单然后范围更改为 100-400。所以人们无法将范围改回 0 - 500。
所以我的问题是: 我怎样才能保持范围不变(所以 0 -500)但将手柄移动到设定值(所以 100 - 400)?
所以我有这个:
<form>
<input type="hidden" name="max" value="0" id="filter_form_max" />
<input type="hidden" name="min" value="500" id="filter_form_min" />
<div id="slider-handles"></div>
<input type="submit" class="price-btn" />{{ 'Set price' | t }}
</form>
和 JS:
$(function() {
var handlesSlider = document.getElementById('slider-handles');
noUiSlider.create(handlesSlider, {
start: [ 0, 500 ],
format: wNumb({
decimals:0,
thousand: '.'
}),
range: {
'min': [ 0 ],
'max': [ 500 ]
},
tooltips: true,
});
handlesSlider.noUiSlider.on('update', function( values, handle ) {
var minVal = document.getElementById('filter_form_min');
var maxVal = document.getElementById('filter_form_max');
minVal.value = values[0]
maxVal.value = values[1]
});
});
您只需更改起始数组的值即可。 尝试通过以下方式更改这些内容。它对我有用。
//---- some code ---
noUiSlider.create(handlesSlider, {
start: [ 100, 400 ],
//-----