在我的 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/