Javascript 使用自定义步长增量时jQuery UI滑块的默认值问题
我正在使用“捕捉到增量”JQuery UI滑块构建表单: 我使用下面的代码,这样滑块的自定义最小值为2501,但仍然在偶数500上递增(不添加额外的1),直到它达到最大值50000。因此,步长增量如下:2501>3000>3500>4000等,直到达到50000Javascript 使用自定义步长增量时jQuery UI滑块的默认值问题,javascript,jquery,jquery-ui,jquery-ui-slider,Javascript,Jquery,Jquery Ui,Jquery Ui Slider,我正在使用“捕捉到增量”JQuery UI滑块构建表单: 我使用下面的代码,这样滑块的自定义最小值为2501,但仍然在偶数500上递增(不添加额外的1),直到它达到最大值50000。因此,步长增量如下:2501>3000>3500>4000等,直到达到50000 <script> $(function() { $("#slider").slider({ value: 10000, min: 2501, max: 50001, step: 500,
<script>
$(function() {
$("#slider").slider({
value: 10000,
min: 2501,
max: 50001,
step: 500,
range: "min",
slide: function(event, ui) {
var x = Number(ui.value);
if (x > 2501) {
x = x - (x % 500);
}
$("#LoanAmount").val('$' + addCommas(x));
}
});
$("#LoanAmount").val('$' + addCommas($("#slider").slider("value")));
function addCommas(nStr) {
nStr += '';
x = nStr.split('.');
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
}
});
</script>
$(函数(){
$(“#滑块”).滑块({
价值:10000,
最低:2501,
最高:50001,
步骤:500,
射程:“分钟”,
幻灯片:功能(事件、用户界面){
var x=数量(用户界面值);
如果(x>2501){
x=x-(x%500);
}
$(“#LoanAmount”).val(“$”+addCommas(x));
}
});
$(“#LoanAmount”).val(“$”+addCommas($(“#slider”).slider(“value”));
函数addCommas(nStr){
nStr+='';
x=nStr.split('.');
x1=x[0];
x2=x.长度>1?'.+x[1]:'';
var rgx=/(\d+)(\d{3})/;
while(rgx.测试(x1)){
x1=x1.替换(rgx,'$1'+','+'$2');
}
返回x1+x2;
}
});
我需要设置该值:10000,以便滑块加载该特定步骤,但问题是它在页面上打印为10001,而不是10000
关于如何解决这个问题有什么建议吗
谢谢 一个可能的解决方案是更正addCommas函数:
$(函数(){
$(“#滑块”).滑块({
价值:10000,
最低:2501,
最高:50500,
步骤:500,
射程:“分钟”,
幻灯片:功能(事件、用户界面){
var x=数量(用户界面值);
如果(x>2501){
x=x-(x%500);
}
$(“#金额”).val(“$”+addCommas(x));
}
});
$(“#amount”).val(“$”+addCommas($(“#slider”).slider(“value”));
函数addCommas(nStr){
var x=数量(nStr);
如果(x>2501){
x=x-(x%500);
}
nStr=x.toString();
x=nStr.split('.');
x1=x[0];
x2=x.长度>1?'.+x[1]:'';
var rgx=/(\d+)(\d{3})/;
while(rgx.测试(x1)){
x1=x1.替换(rgx,'$1'+','+'$2');
}
返回x1+x2;
}
});代码>
金额(增加50美元):
Hey@gaemaf谢谢你的帮助。问题在于,出于合规性原因,必须将最小值设置为2501。您的代码将该值更改回2500。谢谢您,先生。工作起来很有魅力。一旦我的声望达到15,你的选票就会出现。再次感谢你的帮助。