如何在 HTML 数字输入框中同时输入英文和阿拉伯数字?

4

我希望用户可以在键盘语言切换时输入阿拉伯数字(٠١٢٣٤٥٦٧٨٩)和英文数字(0123456789),请问如何实现?


1
就我所测试的情况而言,在编程中,非英语数字并不被视为数字,因此您无法真正使用数字输入。请将输入类型更改为 "文本"。 - ShivCK
你可以使用正则表达式,并从这里添加一个0-9到字符集:阿拉伯数字的正则表达式 /^[0-9\u0660-\u0669]+$/ - adiga
1个回答

0
据我所知,目前没有办法改变内置的 <input type="number"> 行为以实现您想要的效果。
一种可能的解决方法是使用文本输入框,并指定一个同时满足英文和阿拉伯数字的模式,例如:
<form>
    <input type="text" pattern="^([0-9]+([\.][0-9]+)?)|([\u0660-\u0669]+([\.][\u0660-\u0669]+)?)$">
    <input type="submit" value="Submit">
</form>

这是一个可能的正则表达式,可能不是最好的,它可以匹配阿拉伯或英语中的十进制数。如果您只需要整数,那么一个更简单的正则表达式就可以工作,如@adiga的评论所述。


不起作用,因为输入字段本身将阿拉伯数字转换为英文数字。因此,它们全部以英文显示。 - Mina Soleimanzadeh

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