Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 禁用印地语字符作为输入类型编号的输入_Javascript_Asp.net - Fatal编程技术网

Javascript 禁用印地语字符作为输入类型编号的输入

Javascript 禁用印地语字符作为输入类型编号的输入,javascript,asp.net,Javascript,Asp.net,我有一个数字文本框。我已经禁用了通过javascript的文本输入。但是文本框接受印地语字符串和数字。当用户输入印地语数字时,它会在代码隐藏页中转换为英语。但是印地语字符造成了问题,我应该防止印地语输入字符 <input type="number" id="txtWard" onkeypress="return numberOnly(event)" required="required" runat="server" min="0" max="8" /> javascript代码

我有一个数字文本框。我已经禁用了通过javascript的文本输入。但是文本框接受印地语字符串和数字。当用户输入印地语数字时,它会在代码隐藏页中转换为英语。但是印地语字符造成了问题,我应该防止印地语输入字符

<input type="number" id="txtWard" onkeypress="return numberOnly(event)" required="required" runat="server" min="0" max="8" />
javascript代码

function numberOnly(evt) {
    var charCode = (evt.which) ? evt.which : window.event.keyCode;

    if (charCode <= 13) {
        return true;
    }
    else {
        var keyChar = String.fromCharCode(charCode);
        var re = /[0-9]/
        return re.test(keyChar);
    }
}
印地语文本示例हिन्दी 和数字१ २ ३ ४. 文本框不应接受印地语文本。
我怎样才能禁用印地语字符串呢?

我认为您的问题与特定字符无关。您的问题是,只有在手动输入字符时才运行验证,而不是在从剪贴板粘贴字符时运行验证。如果使用ASP.NET,除了当前的JS验证外,还可以使用内置验证,可以在此处找到一个示例:


编辑:或者如果你想在JS上保留它,只需使用onchange事件而不是onkeypress。

因此,我使用谷歌输入工具来测试印地语字符,对我来说效果很好,如果你想只允许数字,你可以使用/\D/只允许数字,这样你就不需要检测数字,试试下面的代码:

函数数{ if/\D/g.teste.value{ e、 value=e.value.replace/\D/g; } }
是否只允许数字?是,仅允许数字。非常感谢。给我们举一个印地语字符串和数字的例子,对我来说很有用good@Pedram添加了示例。谢谢你@user4221591我试图粘贴字符串,但它不接受这些字符,它只接受数字。我觉得你的代码没有任何问题。我有asp.net验证,但我也在尝试实现JS验证。非常感谢。