javascript - 在不更改值的情况下在输入字段中显示不同的值?

标签 javascript html

我有一个应用程序,其输入字段采用美元值。我需要更改此美元值的显示方式,以便该数字使用 $ 和逗号进行格式化,例如如果用户仅输入 5550,则为 $5,550.00。

我找到了一种方法来做到这一点,但这样做会导致使用该字段中的值的代码中的所有内容都崩溃了——它做了很多事情,包括如果给定 $5,550.00 而不是 5550,数据库更新就会中断.

有大量的底层代码,我无权修复所有这些。我需要找到一种方法来向用户显示该值 5,550.00 美元,但保持基础值为 5550。

有什么建议吗?

最佳答案

使用 2 个文本输入。用户看到的“外观”外观,以及实际随表单提交到服务器的“真实”外观。当用户在可见输入中输入文本时,您可以使用 JavaScript 将所需的任何相应值设置到“真实”(隐藏)输入中。这有效地将显示值与提交值分离。您甚至可以使用插件,例如 jQuery Masked Input为您进行前端数字格式化。

确保仅在浏览器中启用 JS 时应用此选项,否则您的表单将因禁用 JS 而损坏。

关于javascript - 在不更改值的情况下在输入字段中显示不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16025469/

相关文章:

javascript - PhoneGap 与 BlackBerry gap_poll 错误

javascript - React Native 边框右/左颜色不起作用

javascript - 获取窗口大小调整函数的值并将其放入另一个函数中

php - Html onclick 似乎在 echo PhP 中不起作用

html - 我为 div 元素添加 tabIndex 并为其添加 onblur 属性。它在我的笔记本电脑上运行良好,但在移动设备上无法运行

javascript - onchange 仅适用于表中的第一行

javascript - 如何使页面右侧滚动而左侧不滚动?

html - letter-spacing 和 text-align 冲突 :center?

javascript - 困难的 HTML、JavaScript、CSS 网格页面

javascript - Angular2 嵌套 formGroups - formArrays 和模板绑定(bind)