【发布时间】:2017-01-06 02:19:42
【问题描述】:
我有一个输入范围的表单-<input id="slider" type="range" min="0" max="120" step="40" val="40">
我想将值作为字符串发送,而不是表示整数。
例如- 0 =“冷冻”,40 =“凉爽”,80 =“温暖”,120 =“热”
这对收件人来说更有意义。如何在传递值之前将整数换成单词?
我认为 jQuery if 语句可能会起作用 -
$("#slider").change(function(){
if('this').val(0) {
$('#slider').val("freezing")
}
else if('this').val(40) {
$('#slider').val("cool")
}
else if('this').val(80) {
$('#slider').val("warm")
}
else if('this').val(120) {
$('#slider').val("hot")
}
console.log($('#slider').val())
});
我知道我的代码是错误的,因此非常感谢任何清理逻辑/语法的帮助,假设它是可能的?
【问题讨论】:
-
$('#slider').val() + ''是一个巧妙的小技巧,可以通过将任何类型(几乎)与字符串连接来将其更改为字符串。 -
我觉得像this ?
-
谢谢。为了确认-我应该将 $('#slider').val("cool") 更改为 $('#slider').val() + 'cool' ?虽然现在技术上的价值不会是“40cool”吗?在我的表单中,整数将毫无意义,所以我想避免用户或收件人看到它们。
-
@webmasterWannabee 试试我的链接
-
我根据您提供的信息进行猜测,但您可能希望有一个单独的字段来显示您的计算值。如果您更改它以更新文本(或隐藏)字段,那么上面的代码应该可以工作。我认为滑块值必须是数字,否则滑块不会知道您的值是更高还是更低。
标签: jquery input integer range