Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript noUiSlider:调整舍入的输入值_Javascript_Jquery_Range_Rangeslider_Nouislider - Fatal编程技术网

Javascript noUiSlider:调整舍入的输入值

Javascript noUiSlider:调整舍入的输入值,javascript,jquery,range,rangeslider,nouislider,Javascript,Jquery,Range,Rangeslider,Nouislider,当我在#年度销售额输入字段中输入一个非四舍五入的数字时,插件会根据“上限”或“下限”自动向上或向下四舍五入。 我是否有办法在字段(如1234567)中输入一个特定的数字,并让它保留该值?然后滑动到上一个或下一个值将使其重新定位 <input type="text" id="annual-sales"> <div class="slider-wrap"> <div class="range-slider-sales-vol"></div> &

当我在#年度销售额输入字段中输入一个非四舍五入的数字时,插件会根据“上限”或“下限”自动向上或向下四舍五入。 我是否有办法在字段(如1234567)中输入一个特定的数字,并让它保留该值?然后滑动到上一个或下一个值将使其重新定位

<input type="text" id="annual-sales">
<div class="slider-wrap">
  <div class="range-slider-sales-vol"></div>  
</div>

// The first number in the array represents the range. Between the 4 options below I have a range from 1000 - 1000000.
// The second number represents the stepped increments within the given range. From the first to second range the stepped increments are 1000.

var range_all_sliders = {
    'min': [ 1000, 1000 ],
    '33%': [ 100000,  50000 ],
    '66%': [ 500000, 100000 ],
    'max': [ 1000000 ]
};

$('.range-slider-sales-vol').noUiSlider({
    start: [ 1000 ],
    range: range_all_sliders,
    format: wNumb({
        decimals: 0
    })   
});

// Pips plugin for points along range slider
$('.range-slider-sales-vol').noUiSlider_pips({
    mode: 'positions',
    values: [0,33,66,100],
    density: 4,
    stepped: true
});

// links range slider to input
$('.range-slider-sales-vol').Link("lower").to($('#annual-sales'));

//数组中的第一个数字表示范围。在下面的4个选项中,我的范围是1000-1000000。
//第二个数字表示给定范围内的步进增量。从第一个范围到第二个范围,阶跃增量为1000。
变量范围\u所有\u滑块={
“min”:[10001000],
'33%': [ 100000,  50000 ],
'66%': [ 500000, 100000 ],
“最大值”:[1000000]
};
$('.range slider销售卷')。noUiSlider({
开始:[1000],
范围:所有滑块的范围,
格式:wNumb({
小数:0
})   
});
//用于沿范围滑块的点的Pips插件
$('.范围滑块销量').noUiSlider_pips({
模式:“位置”,
值:[0,33,66100],
密度:4,
是的
});
//将范围滑块链接到输入
美元(“.range slider sales vol”)。链接(“较低”)至($(“#年销售额”);

这可以通过实现自己的
change
处理程序来实现,默认情况下覆盖一个noUiSlider集

var annualSales = $('#annual-sales'), guard = false;

function setSalesValue(value){
    if ( guard ) return;
    $(this).val(value);
}

annualSales.change(function(){
    var value = $(this).val();

    guard = true;
    slider.val(value);
    guard = false;
});

// links range slider to input
$('.range-slider-sales-vol').Link("lower").to(annualSales, setSalesValue);
请注意
guard
变量的使用:它阻止滑块使用
change
处理程序中设置的值更新输入

我已经用一个新代码更新了你的代码。尝试更改输入字段;滑块将更新,输入值不会重置。移动滑块将更新输入