我可以在android webview中使用html5输入type = text的输入标签的指定最大长度。当失去焦点/模糊时,值将被修剪为最大长度。
例如
<input type="text" maxlength="5" id="hahaha">
value entered = abcdefghij
on blur/lostfocus value displayed = abcde.
无论如何限制用户输入多于maxlength的字符,而不是在用户输入内容后修剪内容。在内部监督办公室,它工作正常。
答案 0 :(得分:1)
此问题可能是Android 4.1版本中的错误,您可以在此处看到35264。 你可以用一些Javascript解决这个问题:
<input type="text" maxlength="3" id="hahaha" onkeypress="if(this.value.length >= this.getAttribute('maxlength') return false;" />
或JQuery:
$(function() {
max_length = $("#hahaha").attr("maxlength");
$("#hahaha").attr("onkeypress", "if(this.value.length >= max_length) return false;");
});
答案 1 :(得分:1)
派对有点晚了,但正如neliojrr所说,你可以使用javascript / jquery来纠正这个问题。但是,我很想把它变得更通用:
$('input[maxlength]').on('keydown', function(event) {
var $this = $(this);
if ($this.val().length > parseInt($this.attr('maxlength'), 10)) {
event.preventDefault();
}
});
答案 2 :(得分:0)
感谢@paddybasi,它为我工作。只是一个小的更正。 keydown事件似乎在android中不起作用。因此,我们需要将事件更改为“ textInput”。
$('input[maxlength],textarea[maxlength]').on('textInput', function (event) {
var $this = $(this);
if ($this.val().length >= parseInt($this.attr('maxlength'), 10)) {
event.preventDefault();
}
});