如何在Microsoft Edge中使用HTML5将输入数字的小数点改为逗号?

3

我希望有一个能接受逗号而不是点的输入框。

像下面这样使用验证器在谷歌浏览器中可以工作,但在 Edge 浏览器中不能:

<input type="number" pattern="[0-9]+([\,|\.][0-9]+)?" name="my-num"
    step="0.01"
    id="with-validator"/>

$('#with-validator').on('change keyup', function(event) {
    if ( event.target.validity.valid ) {
        $('#result').text($(this).val());
    } else {
        $('#result').text('NOPE');
    }    
});

很不幸,我正在开发一款使用Edge渲染引擎的UWP Windows 10应用。

我该如何在Edge中实现这个功能?


1
数字输入的本地化不足。 - epascarello
1个回答

0
<input type="number" name="quantity" min=".01" max=".99" step= ".01"/>

这是一种更简单的正则表达式编写方式,但与您的实际问题有关...

http://quirksmode.org/html5/inputs/ 说明 Edge 浏览器仅在以下列表中提供 3、4 和 5。 如果浏览器满足以下条件,则支持此类型: 1.向用户提供自定义界面(在触摸屏上提供自定义键盘;在桌面上提供箭头) 2.限制输入为数字(以及相关字符,如负号) 3.不向服务器发送错误数据 4.在发现错误数据时停止表单提交 5.通过错误消息通知用户提交失败。

简而言之,HTML5 输入 type = number 并非 Edge 浏览器百分之百支持。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接