javascript - javascript 的 onClick 事件在移动设备上不起作用

标签 javascript jquery google-chrome jsp

在我的 JSP 页面中,我使用 onkeypress="return event.charCode >= 48 && event.charCode <= 57 "仅允许数字。它在网站浏览器上运行良好。但是,移动设备浏览器(Google chrome)不支持它。我已启用 JavaScript 来执行。我试过this answer ,但什么也没发生。我还有另一个问题,它将计算 value in input tag ,如果值高于4999,它将显示另一个输入标签,它在移动设备上也不起作用。我该如何解决这个问题?

这是代码,

第一个输入值的按钮,仅接受数字值

<input type="text" name="amount1" id="upload" onkeypress="return event.charCode >= 48 && event.charCode <= 57 && showFile()" required />

隐藏按钮,数值大于4999时显示

<div id='openfile' style='display:none'><input type="file" class="form-control" name="panImg1" placeholder="Upload Your pancard image"  /></div>

脚本文件

<script type="text/javascript">
        function showFile()
        {
            var choice = document.getElementById('upload').value;
            if (choice > 4999)
            {
                document.getElementById('openfile').style.display = 'block';
            } else
            {
                document.getElementById('openfile').style.display = 'none';
            }
        }
    </script>

最佳答案

Google Chrome Mobile 中的按键事件存在错误,并且通常可以在移动设备上出现。这应该提供修复

onkeyup="mobilePress(e)"
function mobilePress(e) {
    e.target.value = e.target.value.replace(/[^\d]/g, '');
    return false;
}

或者,您可以在移动设备上监听“textInput”事件而不处理 RegExp。至于这个问题,您可以发布更多您的代码以及您想要做什么吗?

关于javascript - javascript 的 onClick 事件在移动设备上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45408491/

相关文章:

javascript - AngularJS:如何在初始化期间在 Controller 之间传递数据?

jquery - 恒星 js 不工作

javascript - 如何在 JavaScript 中一次选择所有索引?

google-chrome - 重定向缓存卡在Chrome中

javascript - 如何在单击按钮时在一行 ng-repeat 中使输入只读

javascript - 为什么我的文本区域返回值 'null' ?

javascript - 作为内容脚本加载的缩小版 AngularJS 应用程序能够发出 XHR 请求吗?

jquery - 删除我的模板中的滚动条

javascript - 如何从 Chrome 的 Javascript 控制台获取输入?

Firefox 中的 Html 5 日期选择器