这是我面临的问题的简单示例:jsfiddle 。您不能在PC上的文本字段中输入值。同样的代码在安卓铬上不起作用。我可以在字段中输入任何内容。
我试图防止在特定条件下将文本输入文本框
这是函数
function func(event, src){
if (condition){
alert(33);
event.preventDefault();
}
}
我是这样用的:
<input onkeydown="func(event, $(this))" />
该代码在窗口即和铬上完美运行。但是,在 android 的 chrome 上,它会显示警报 33,但不会阻止输入文本。我已经尝试了event.stopPropagation();
和return false
但输出仍然相同(仅显示警报)。
注意:由于其他一些功能,我无法使用$("input").keydown()
。所以我只能通过 html 使用事件。
您可以尝试此方法:
.HTML
<input id="pVal" />
JavaScript:
const inpt = getElementById('pVal')
inpt.addEventListener('textInput', evt => {
evt.preventDefault();
})
它适用于安卓浏览器