我正在使用基于 Angular 和 jquery 的网站。我有一个用于验证 float 数组的文本输入字段。我的要求是限制用户输入字母等。
问题是我正在使用 e.preventDefault()
但它不能在 android 默认浏览器中运行,但在 android chrome 中运行良好。
我搜索了很多,但没有得到任何解决方案。
我的示例代码:-
$('#test').keydown(function (e) {
e.stopPropagation();
e.preventDefault();
e.returnValue = false;
e.cancelBubble = true;
return false;
});
我也试过了:-
$('#test').keydown(function (e) {
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
});
注意:- 我不能使用 keypress
事件,因为 android 默认浏览器无法监听此事件。
最佳答案
Android 上的默认浏览器也有这个问题。 preventDefault 对我没有帮助,所以我使用了 .on jQuery 函数。
$('#test').on('input',function () {
var inputText = $(this).val();
var resultText = inputText.replace(/[^0-9]/g, '');
$(this).val(resultText);
});
您可以将需要允许的其他字符添加到正则表达式。希望对您有所帮助。
关于javascript - Jquery preventDefault 在 android 4.4 默认浏览器上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30253404/