Jak uniemożliwić użytkownikowi wprowadzanie tekstu w textarea po osiągnięciu maksymalnego limitu znaków
Chcę uniemożliwić użytkownikowi wprowadzanie tekstu w polu tekstowym po osiągnięciu maksymalnego limitu znaków. Co się stało, że kiedy osiągnąłem maksymalny limit, mój pasek przewijania w obszarze tekstowym przeniósł się do góry. W jakiś sposób zapobiegam temu za pomocą tego kodu.
<code>jQuery(document).ready(function($) { $('textarea.max').keyup(function() { var $textarea = $(this); var max = 400; if ($textarea.val().length > max) { var top = $textarea.scrollTop(); $textarea.val($textarea.val().substr(0, max)); $textarea.scrollTop(top); } }); }); //end if ready(fn) </code>
Ale chcę również, aby po osiągnięciu maksymalnego limitu użytkownik nie mógł wpisać niczego w polu tekstowym. Obecnie co się stało, że po osiągnięciu maksymalnego limitu, jeśli użytkownik naciśnie i przytrzyma klawisz, znaki wpisują się w polu tekstowym, chociaż po zwolnieniu przycisku wracają do oryginalnego tekstu (np. $ Textarea.val ($ textarea.val (). substr (0, max));). Ale chcę, żeby ten warunek się spełnił
<code>if ($textarea.val().length > max) { </code>
użytkownik nie może nic wpisać. Chcę, aby kursor zniknął z pola tekstowego. Ale jeśli użytkownik usunie jakiś tekst, kursor będzie również dostępny dla użytkownika, aby ponownie wpisać tekst. Jak mogę to zrobić?