Javascript强制数字仅在三星S4中不起作用
我有javascript阻止用户在字段中输入字母 以下代码适用于iPhone 4/5和三星Galaxy S3,但不适用于S4 有人知道S4的修复方案吗Javascript强制数字仅在三星S4中不起作用,javascript,jquery,Javascript,Jquery,我有javascript阻止用户在字段中输入字母 以下代码适用于iPhone 4/5和三星Galaxy S3,但不适用于S4 有人知道S4的修复方案吗 $("#postcode").keydown(function (e) { // Allow: backspace, delete, tab, escape, enter and . if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 || //
$("#postcode").keydown(function (e)
{
// Allow: backspace, delete, tab, escape, enter and .
if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
// Allow: Ctrl+A
(e.keyCode == 65 && e.ctrlKey === true) ||
// Allow: home, end, left, right
(e.keyCode >= 35 && e.keyCode <= 39))
{
// let it happen, don't do anything
return;
}
// Ensure that it is a number and stop the keypress
if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105))
{
e.preventDefault();
}
});
$(“#邮政编码”).keydown(函数(e)
{
//允许:退格、删除、制表符、转义、输入和。
如果($.inArray(例如,keyCode[46,8,9,27,13,110,190])!=-1||
//允许:Ctrl+A
(e.keyCode==65&&e.ctrlKey==true)|
//允许:起始、结束、左、右
(e.keyCode>=35&&e.keyCode我们在三星Galaxy S6中也遇到了同样的问题。因此,对于我来说,下面的代码可能是避免使用keyCode的解决方案,而只是输入文本字段的值。您可以在keydown事件处理程序方法中使用这部分代码
var isValid = /^[0-9]*$/.test(value);
if (!isValid){
$(element).val(value.substring(0, value.length - 1));
}
这是检查用户是否输入了数字以外的内容,只是将其删除。将类型设置为number
?将类型设置为number不支持所有兄弟请定义“不工作”.有错误吗?在iPhone 4/5和三星Galaxy S3中,我只能输入数字,但三星Galaxy S4可以输入任何东西。您在Android设备上使用的浏览器是什么?设备版本本身并不完全相关。虽然input type='number'
可能无法在所有浏览器中工作,但显然这也不是。