4

HTML入力要素にはmaxlength属性があり、maxlengthより長いテキストの入力を防ぎます。入力ボックスにテキストを貼り付けるときに、テキストがmaxlengthより長い場合、maxlengthの正確な長さに切り捨てられます。テキストが切り捨てられたかどうかはどうすればわかりますか?

ありがとう。

4

1 に答える 1

0

input要素の値の長さがその要素のmaxlengthと同じであるかどうかを知りたい場合は、次のようにすることができます(JQueryを使用)。

var $el =  $("#myInputElement")
var l = $el.val().length;
var ms = $el.attr("maxlength");
var m = parseInt(ms, 10);

// at this point m and l are maxlength and actual length

ただし、これは切り捨てられた値と同じではなく、単にその正確な長さである可能性があります。

最大長に達した後もユーザーがまだ書き込みを行っているかどうかを知りたい場合は、キーアップイベントを調べて、入力がフォーカスされているかどうかを確認できます。ただし、クリップボードを入力と比較するには、Flashを使用する必要がある場合があります。

要するに、良い解決策はありません。

于 2012-10-22T19:24:25.873 に答える