函数event.preventDefault()在android chrome中不起作用

时间:2014-03-03 12:49:07

标签: android jquery google-chrome event-handling

以下是我面临的问题的一个简单示例:jsfiddle。 您无法在PC上的文本字段中输入值。完全相同的代码不适用于Android chrome。我可以在字段中键入任何内容。

我试图阻止在特定条件下将文本输入文本框

这是函数

function func(event, src){
    if (condition){
        alert(33);
        event.preventDefault();
    }
}

我用过这样的话:

<input onkeydown="func(event, $(this))" />

代码在windows ie和chrome上完美运行。但是在android中的chrome上,它显示警报33,但它不会阻止输入文本。我尝试了event.stopPropagation();return false,但输出仍然相同(仅显示警报)。

注意:由于其他一些功能,我无法使用$("input").keydown()。所以我只能通过html使用事件。

1 个答案:

答案 0 :(得分:0)

你可以试试这个方法:

HTML

<input id="pVal" />

JavaScript:

const inpt = getElementById('pVal')
inpt.addEventListener('textInput', evt => {
    evt.preventDefault();
})

适用于 Android Chrome