input在html中的maxlength属性在HTC One M7上不起作用

我有一个简单的input字段,它有一个maxlength =“2”属性。 代码如下所示:

<input id="txtLoginName" maxlength="2"> 

它在大多数Android设备上工作正常。 但是,在HTC One M7,它不起作用。 在这个设备上,它只允许我input尽可能多的字符。

任何build议? 我认为这应该是一个设备的具体问题。

提前致谢。

Solutions Collecting From Web of "input在html中的maxlength属性在HTC One M7上不起作用"

试试这个:

 var $input = $('input') $input.keyup(function(e) { var max = 5; if ($input.val().length > max) { $input.val($input.val().substr(0, max)); } }); 

我在几个项目上注意到了这个问题。 我认为某些版本的Android对maxlength的支持不好。

我的解决scheme是使用jQuery的keydown函数来检查字符的数量,并防止再次被input,如果最大的打击。

 $('#inputWithMaxLength').keydown(function (e) { var inputLength = jQuery(this).val().length; if(inputLength >= 10) { e.preventDefault(); return false; } } 

我相信你可以改变这个,以便search任何具有maxlength属性的input,并创build一个即时的jQuery备份。 我不确定那会不会很慢。