【发布时间】:2021-08-22 23:39:51
【问题描述】:
我很难弄清楚如何工作。
首先,我有一个范围输入滑块。滑块有 5 层增量,但问题是,在滑块的球下面有一个标签,上面写着“0/5”、“1/5”、“2/5”等。有没有办法显示标签以下:默认开始应该是“0”,然后是“0-10”、“10-25”、“25-100”、“100-500”,最后是“500+”。
<input id="range_size_value" type="text" class="rangeSliderRate"
data-min="0.0" data-max="5.0" data-from="0"
data-step="1"
name="range_size_value">
<input hidden readonly name="size" id="hidden_input_value" type="text" value="0">
$('#range_size_value').on('input', function (e) {
let size_value = $(".irs-single");
let input_step_value = $(this).val();
let hidden_input_value = $('#hidden_input_value');
if (input_step_value === '0') {
size_value.attr('value', '0');
hidden_input_value.attr('value', '0');
}
if (input_step_value === '1') {
size_value.html('0-10');
hidden_input_value.attr('value', '0-10');
}
if (input_step_value === '2') {
size_value.html('10-25');
hidden_input_value.attr('value', '10-25');
}
if (input_step_value === '3') {
size_value.html('25-100');
hidden_input_value.attr('value', '25-100');
}
if (input_step_value === '4') {
size_value.html('100-500');
hidden_input_value.attr('value', '100-500');
}
if (input_step_value === '5') {
size_value.html('500+');
hidden_input_value.attr('value', '500+');
}
});
这是我的代码。它有点工作,但不是真的。例如,当我按住鼠标按钮并向右滑动条时,您可以看到标签变为“0-10”、“10-25”等,但只要我松开鼠标按钮,它会回到“1/5”等。
此外,还有一个名为“irs-single”的类,它是一个控制标签以显示值的跨度。我在我的 html 代码中没有看到这个 span 元素。当我检查元素时,我只会在 Google 开发工具中看到。
如果有更好的方法,请务必指出正确的方向。我觉得有比我编码的更好的方法。我觉得有很多条件“if”语句。但我想保留滑块的样式。我认为这更像是一种合乎逻辑的情况。
【问题讨论】: