问题描述
我正在使用基于角度和jquery的网站。我有一个文本输入字段用于验证浮点数组的数组。我的要求是限制用户输入字母等。
问题是我正在使用 e.preventDefault()$ c $但它不能在android默认浏览器中工作,但在android chrome中完美工作。
我搜索了很多,但无法获得任何解决方案。
我的示例代码: -
$('#test')。keydown(function(e){
e.stopPropagation();
e.preventDefault();
e.returnValue = false;
e.cancelBubble = true;
return false;
});
我也尝试过: - $ / b
$ b <$ p如果(e.preventDefault){
e.preventDefault();
} $(
)$('#test')。 else {
e.returnValue = false;
}
});
注意: - 我无法使用 keypress
事件,因为android默认浏览器无法收听此事件。
我也有Android上的默认浏览器的这个问题。
$ b
$('#test')。on('输入',function(){
var inputText = $(this).val();
var resultText = inputText.replace(/ [^ 0-9] / g,'' );
$(this).val(resultText);
});
您可以为正则表达式添加需要允许的其他字符。希望它有帮助。
I am working with a angular and jquery based website. I have a text input field for validating array of floating numbers. My requirement is to restrict the user from entering alphabets, etc.
The problem is I am using e.preventDefault()
but its not working in android default browser but working perfectly in android chrome.
I have searched a lot but unable to get any solution.
My sample code :-
$('#test').keydown(function (e) {
e.stopPropagation();
e.preventDefault();
e.returnValue = false;
e.cancelBubble = true;
return false;
});
I have also tried :-
$('#test').keydown(function (e) {
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
});
Note:- I cannot use keypress
event as the android default browser cannot listen this event.
I also had this problem with default browser on Android. preventDefault didn't help me, so I used .on jQuery function.
$('#test').on('input',function () {
var inputText = $(this).val();
var resultText = inputText.replace(/[^0-9]/g, '');
$(this).val(resultText);
});
You can add to regex the other characters you need to be allowed. Hope it helps.
这篇关于Jquery preventDefault不适用于Android 4.4默认浏览器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!