Javascript 将输入值格式化为用户类型

Javascript 将输入值格式化为用户类型,javascript,format,numeraljs,Javascript,Format,Numeraljs,当用户键入时,我很难将输入字段值更新为货币。当我使用输入事件更改时,我能够成功地将值更新为货币。但是当我使用键控事件时,输入值和交互行为对用户不是很友好 我尝试使用setTimeout,但由于用户键入正确,无法实现值/货币格式 如有任何建议,我们将不胜感激。 示例: myInputElement.addEventListener('keyup', function (e) { e.currentTarget.value = numeral(e.currentTarget.value).form

当用户键入时,我很难将输入字段值更新为货币。当我使用输入事件更改时,我能够成功地将值更新为货币。但是当我使用键控事件时,输入值和交互行为对用户不是很友好

我尝试使用setTimeout,但由于用户键入正确,无法实现值/货币格式

如有任何建议,我们将不胜感激。

示例:

myInputElement.addEventListener('keyup', function (e) {
 e.currentTarget.value = numeral(e.currentTarget.value).format('$0,0.00');
});
尝试“输入”eventListener。这将在每次输入新字符时触发

var myInputElement = document.getElementById("element");

myInputElement.addEventListener("input", function (e) {
  e.currentTarget.value = numeral(e.currentTarget.value).format('$0,0.00');
});

选择小数

numeral(e.currentTarget.value).format('$0,0.[00]');

我尝试了输入事件,但也没有正常工作。它不允许用户键入多个DigitHanks-Ercan,这是一个改进,但我使用时需要的格式是$80.00。格式(“$0,0.[00]”)它没有正确格式化值