Javascript 输入event.target.value与输入中的字符串不同(类型编号)

Javascript 输入event.target.value与输入中的字符串不同(类型编号),javascript,html,angular,Javascript,Html,Angular,我有输入类型number,当我写入123-时,我从event.target.value中获得一个空值,但我希望在写入输入时获得值,并用regex/(^([^-\d]*)|[^\d]*)/g替换空值。有可能吗?如何从输入中获得完全相同的文本 它必须是类型号,因为有时我需要使用min和max属性 我希望通过regex替换文本,如下所示(value.replace(regex),): -123.123转换为-123123 --123-456转换成-123456 123-45进入12345 12e23

我有输入类型number,当我写入
123-
时,我从
event.target.value
中获得一个空值,但我希望在写入输入时获得值,并用regex
/(^([^-\d]*)|[^\d]*)/g替换空值。有可能吗?如何从输入中获得完全相同的文本

它必须是类型号,因为有时我需要使用
min
max
属性

我希望通过regex替换文本,如下所示(
value.replace(regex),
):

  • -123.123
    转换为
    -123123
  • --123-456
    转换成
    -123456
  • 123-45
    进入
    12345
  • 12e23,.-
    进入
    1223
constmyfun=(e)=>
设置超时(()=>{
console.log(e.target.value)}
)

“我想通过正则表达式替换文本…”-为什么?如果浏览器支持
type=“number”
它只允许提交有效的数字。我只想在输入和粘贴阶段排除不需要的字符。浏览器已经为您完成了这项工作。提交表单时,它将检查字段内容的有效性。如果您需要在实际提交表单之前进行检查,那么我知道这一点,但我很乐意我想知道我是否可以进一步操作输入[type=“number”]的值。至于输入[type=“text”],一切都会按预期工作,但我不能使用最小值和最大值