[英]How to get the value of the slider bootstrap?
如何将滑块引导程序的值获取到隐藏的 iputs?
<input type="hidden" name="min_value" id="min_value" value="">
<input type="hidden" name="max_value" id="max_value" value="">
$(function () {
$("#slider-range-s1").slider({
range: true,
min: 0,
max: 500,
value: [0, 500]
});
});
我认为它目前已损坏。
文档说明:
方法
.slider('getValue')
获取价值。
但是,调用$('#sliderDivId').slider('getValue')
返回 jQuery 选择器而不是值...
现在你可以手动从数据对象中抓取它... $('#sliderDivId').data('slider').getValue()
快速修复:
$.fn.slider = function (option, val) {
if (typeof option == 'string') {
if (this.length) {
var data = this.eq(0).data('slider');
if (data)
return data[option](val);
return null;
}
}
return this.each(function () {
var $this = $(this),
data = $this.data('slider'),
options = typeof option === 'object' && option;
if (!data) {
$this.data('slider', (data = new Slider(this, $.extend({}, $.fn.slider.defaults, options))));
}
})
};
问题是,不存在具有相同ID(滑块DIV和滑块DIV中的输入)超过1个元件,在这个例子$(“#sliderDivId”)。 如果使用 JQuery 选择输入元素,则可以使用滑块 API。
$('input[id="sliderDivId"]').slider('getValue')
在撰写本文时,它有点不稳定,但您可以使其正常工作:
1/ 确保您指定了一个以“value[0]”开头的空范围。 除非您这样做,否则其内部值字段将变为未定义,例如
$('#setBidDialogSlider').slider({ value: [0], max: max, step: 0.2, formater: function(v) { return v.toFixed(2)+"BTC" } });
2/ 现在终于可以捕捉到事件中的值了
$('#setBidDialogSlider').slider().on('slide', function(ev) {
$scope.dialog.order_value = ev.value*$scope.dialog.price;
});
我知道我迟到了,但这仍然坏了,但要修复它,请打开bootstrap-sliders.js
并注入以下三件事:
第一个函数的最后: Slider
:
this.calculateValue();
就在之前: return val;
在calculateValue
函数中
grandVal = val;
在$.fn.slider
函数之后:
$.fn.sliderValue = function(){
return grandVal;
};
var grandVal;
现在您可以通过$('#MySliderId').sliderValue()
访问该值
您可以从内置函数中使用它
$( "#slider-range-s1" ).slider({
range: true,
min: 0,
max: 500,
value: [ 0, 500 ]
slide: function( event, ui ) {
// u could use this function
$(".min-slider-value").html( "$" + ui.values[ 0 ]);
$(".max-slider-value").html( "$" + ui.values[ 1 ]);
},
change: function(event, ui) {
// or u could use this function
$(".min-slider-value").html( "$" + ui.values[ 0 ]);
$(".max-slider-value").html( "$" + ui.values[ 1 ]);
}
});
谢谢你,我想我可以和你们分享这个:D
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.