【发布时间】:2018-09-20 03:10:41
【问题描述】:
我有一个表单,我正在使用 API 自动填充价格字段。我想做的是将输入的值(提交的内容)设置为数字,但在实际输入字段中我希望它以价格格式显示。
$(function() {
var price = 3.25;
$('input').val(price);
$('input').text('$' + price);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="price" type="text" />
在上面的示例中,我将如何使提交的值只是原始数字3.25,但在实际输入字段中显示为$3.25?
【问题讨论】:
-
你不能因为
text()函数不适用于输入。为什么不在$<input id="price" type="text" />之类的文本字段前面放一个$? -
根据我的经验,这种事情的常见方法是将数字部分放在一个跨度或带有标识符的东西中,并且 $ 出现在该元素之前。然后你的所有逻辑就是设置跨度。但在用户看来,$ 似乎属于金额。
-
Bootstrap 和可能的其他库也有很好的小方法将 $ 附加到输入,因此它不是值的一部分,但看起来并不垃圾。 getbootstrap.com/docs/4.1/components/input-group