【发布时间】:2016-06-09 17:36:39
【问题描述】:
这是我的代码,它以货币格式返回数字,但我希望在数字前添加美元符号 ($)。
document.getElementById("numbers").onblur = function (){
this.value = parseFloat(this.value.replace(/,/g, ""))
.toFixed(2)
.toString()
.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
id 数字指的是输入文本
谢谢!
【问题讨论】:
-
您是否尝试过仅使用字符串连接?
this.value = "$" + parseFloat(... the rest) -
@hotforfeature。最好的答案。有时人们就是只见树木不见森林......
-
@hotforfeature 这行得通,但是当您尝试再次更改金额时,它会返回 $NaN(谢谢)
-
基于上面的 cmets,您可以尝试在进行一些计算之前从字符串中删除美元符号,完成后将其添加回来。
-
toFixed()返回一个字符串,您可以放心地删除对toString()的后续调用。顺便说一句,我建议使用 CSS 生成的内容来显示货币,或者只是在包含<input>的元素之前插入一个元素。
标签: javascript html numbers currency