在 html输入范围中显示它在处理程序上的值时有些奇怪。
获得了一些html / php代码:
<div class="slidecontainer">
<input type="range" style="-webkit-appearance: none;
width: 100%;
height: 25px;
background: linear-gradient(to right, red, yellow, green);
outline: none;
opacity: 0.7;
-webkit-transition: .2s;
transition: opacity .2s;"
min="1" max="<?php printf(number_format($buy_now_price, 2, '', ''),
$currency_code_display); ?>"
value="<?php echo number_format($result->bid, 2, '', '') . " " . $currency_code_display; ?>"
class="slider" id="myRange">
</div>
问题在于此代码显示输入的最大值和最小值,但处理程序始终位于中间。为什么?
所有输入都有不同的值,但处理程序都是一样的?该怎么办?
答案 0 :(得分:3)
目前,您要在输入的值中打印此内容:
<?php echo number_format($result->bid, 2, '', '') . " " . $currency_code_display; ?>
在您显示的示例中,最终结果如下所示:
value="1300 "
^
尾随空格导致滑块回落到默认值(50%)。此处的货币显示无关紧要:HTML不知道如何处理1300 $
与1300 €
。
简而言之,只需使用该号码即可。没有尾随空格,没有货币标记。