在我的JSP页面中,我使用onkeypress="return event.charCode >= 48 && event.charCode <= 57 "
仅允许数字。它与网站浏览器一起运行良好。好吧,它在移动设备浏览器(谷歌浏览器)中不受支持。我已经启用了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>
答案 0 :(得分:1)
关键时刻活动在Google Chrome移动版中存在问题,一般情况下可以在移动设备上播放..这应该提供修复
onkeyup="mobilePress(e)"
function mobilePress(e) {
e.target.value = e.target.value.replace(/[^\d]/g, '');
return false;
}
或者,您可以在移动设备上收听“textInput”事件,而不是处理RegExp。至于问题,你的帖子可能会更多地发布你的代码吗?
答案 1 :(得分:0)
我认为javascript可能无法在某些手机的谷歌浏览器浏览器的输入选项卡的onKeypress上运行,如果出现此问题,请使用jquery以获得更好的性能,
这段代码帮我$(document).ready(function () {
$("#upload").on('input', function () {
if (v > 40000) {
var v = "var v = "<div id='appDiv' class='col-md-4 inputGroupContainer'><input required='' type='text' name='panImg1' /></div>";
$('#newDiv').append(v);
}
});
});
并在页面中添加了Div
<div id="newDiv"></div>
。在这种情况下,使用jquery可以获得更好的结果。谢谢你的帮助。