使用noUiSLider的wNumb.js插件,我试图将多个滑块上的输入格式化为美元。基本格式对象适用于第一个输入,但第二个输入和所有其他具有滑块的输入显示为空。此外,浏览器不会抛出任何JavaScript错误。
指向wNumb文档的链接:http://refreshless.com/wnumb/ 链接到noUiSlider文档:http://refreshless.com/nouislider/
这是基本的noUiSlider代码:
var slider_sales_vol = $('.range-slider-sales-vol'),
slider_sales_vol_mas = $('.range-slider-sales-vol-mas'),
AnnualVisaSales = $('#AnnualVisaSales'), guard = false,
AnnualMasterCardSales = $('#AnnualMasterCardSales'), guard = false;
function setSalesValue(value){
if ( guard ) return;
$(this).val(value);
}
AnnualVisaSales.change(function(){
var value = $(this).val();
guard = true;
slider_sales_vol.val(value);
guard = false;
});
AnnualMasterCardSales.change(function(){
var value = $(this).val();
guard = true;
slider_sales_vol_mas.val(value);
guard = false;
});
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,
thousand: ',',
prefix: '$ '
})
});
$('.range-slider-sales-vol-mas').noUiSlider({
start: [ 1000 ],
range: range_all_sliders,
format: wNumb({
decimals: 0,
thousand: ',',
prefix: '$ '
})
});
$('.range-slider-sales-vol').Link("lower").to(AnnualVisaSales, setSalesValue);
$('.range-slider-sales-vol-mas').Link("lower").to(AnnualMasterCardSales, setSalesValue);
答案 0 :(得分:0)
问题很简单。我的第一个输入是' type = text'。因此,它可以很容易地使用字符串数据格式化,例如' $','。'等...以下所有输入' type =数'这导致noUislider格式无效。