javascript - 如何结合范围滑块清空输入字段?
问题描述
我有一个带有最小值和最大值的范围滑块,它由 ng-model 与输入字段绑定。但是不可能有一个空的输入字段,通过退格输入字段的值始终是最小值或指定最小值和最大值之间的中间值。
如何使输入字段在退格上也为空,以便用户可以填写自己的值?
示例:如果用户想填写例如 250 作为值,他需要用 CTRL+A 选择输入字段中的值并将值替换为 250。现在不可能将 1(从最小值)更改为 2填写 250。其他选项是使用键盘上的箭头。
<input type="number"
ng-model="sliderElement.value"
ng-change="setRange()">
<input type="range"
ng-model="sliderElement.value"
min="{{rangeSliderMinValue}}" max="{{rangeSliderMaxValue}}"
step="{{rangeSliderStep}}"
ng-change="setRange()"/>
JS:
this.sliderElement.value = 50;
this.rangeSliderMinValue = 1;
this.rangeSliderMaxValue = 400;
this.rangeSliderStep = 1;
setRange() {
const rangeSliderElement = this.element[0].querySelector('.range-slider').getElementsByTagName('input')[0];
const val = (rangeSliderElement.value - this.rangeSliderMinValue) / (this.rangeSliderMaxValue - this.rangeSliderMinValue);
rangeSliderElement.style.backgroundImage = '-webkit-gradient(linear, left top, right top, '
+ 'color-stop(' + val + ', red), '
+ 'color-stop(' + val + ', green)'
+ ')';
}
解决方案
推荐阅读
- c++ - 如何使用 Qt 5 (C++) 中的按钮运行和关闭 roslaunch
- sql-server - SQL Server - 列名无效
- java - 如何使用java查询mongodb
- python - 两个稀疏数据集的插值结果(图像匹配)
- javascript - 如何在Javascript中的其他函数中使用参数返回一个函数
- python - 从 .py 文件生成 .exe 后,从 dist 文件夹运行 .exe 文件时发生以下错误
- python - 在 python 中使用 Clibs 随机分配内存
- c# - 用于 if 语句的 Visual Studio C# 延迟函数
- bash - 打印 IFS 字符
- redis - 谷歌云运行 redis 客户端失去与实例的连接