maxlength="2" 属性を持つ単純な入力フィールドを取得しました。コードは次のようになります。
<input id="txtLoginName" maxlength="2">
ほとんどの Android デバイスで正常に動作します。ただし、HTC One M7 では機能しません。このデバイスでは、好きなだけ文字を入力できます。
なにか提案を?これまでのところ、それはデバイス固有の問題であるべきだと思います。
前もって感謝します。
maxlength="2" 属性を持つ単純な入力フィールドを取得しました。コードは次のようになります。
<input id="txtLoginName" maxlength="2">
ほとんどの Android デバイスで正常に動作します。ただし、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));
}
});
これを防ぐには、(Js-Jquery ハイブリッド) を使用する必要があります。
$("body").unbind("keyup").on("keyup","input[maxlength],textarea[maxlength]", function(event) {
this.value= this.value.substr(0, this.getAttribute("maxlength"));
this.onkeyup && this.onkeyup();
});
onkeyup は、このコードの実行後に呼び出す必要があるインライン onkeyup がある可能性があるためです (たとえば、char カウンターを更新するため)。