我有一个带有十进制值的下拉列表。(格式化为字符串)
<select id="SizeBox">
<option id="size_5" value="14.00">14</option>
<option id="size_6" value="16.00">16</option>
<option id="size_7" value="18.00">18</option>
<option id="size_8" value="20.00">20</option>
<option id="size_9" value="24.00">24</option>
<option id="size_10" value="28.00">28</option>
<option id="size_11" selected="selected" value="28.35">28,35</option>
<option id="size_12" value="36.00">36</option>
</select>
我总是取选定的值并将其保存在一个变量中:
var backupSize = "28.35";
当用户选择另一个大小并想要撤消他的更改时,我提供了一个重置按钮,该按钮应该再次选择 backupSize 值。
SelectSize(parseFloat(backupSize).toFixed(2));
function SelectSize(size) {
$('#SizeBox').val(size);
}
问题是使用这个 toFixed 方法会删除我的小数精度并将值 28.00 传递给 SelectSize 函数。当然,我的列表中没有具有此值的选项,因此重置功能失败。
如果我在没有 toFixed(2) 部分的情况下使用 SelectSize 函数,则“20.00”之类的值将作为“20”传递,并且 SelectSize 函数也将无法重置下拉框中的大小。
我已经搜索了处理这些十进制数字的函数,就像字符串一样,但到目前为止没有成功。我该如何解决这个问题?
谢谢你的帮助!