ホームページ >ウェブフロントエンド >jsチュートリアル >イベントハンドラーを使用せずにHTMLのTextAreaに文字制限を適用するにはどうすればよいですか?
JavaScript を使用した HTML での TextArea の文字制限の強制
JavaScript は、HTML の maxlength 属性によって提供される機能を拡張して、自動的にテキスト領域に文字制限を課す。このアプローチは、手動のイベント処理の必要性を排除することで、入力制限を強制する合理的かつ効率的な方法を提供します。
イベント ハンドラーを使用しない Maxlength の強制
制限する従来のアプローチテキストエリアの文字には、onkeypress や onkeyup などのイベント ハンドラーの使用が含まれます。ただし、複数のテキスト領域に制限を指定する必要がある場合、これは面倒になります。
JavaScript を使用すると、明示的なイベント処理をバイパスする、より洗練されたソリューションが可能になります。
<code class="javascript">window.onload = function() { // Retrieve all text areas on the page var txts = document.getElementsByTagName('TEXTAREA'); // Loop through each text area for(var i = 0, l = txts.length; i < l; i++) { // If the textarea has a valid maxlength attribute (numeric value) if(/^[0-9]+$/.test(txts[i].getAttribute("maxlength"))) { // Define a function to handle maxlength enforcement var func = function() { var len = parseInt(this.getAttribute("maxlength"), 10); // Check if the input length exceeds the limit if(this.value.length > len) { // Alert the user and truncate the input alert('Maximum length exceeded: ' + len); this.value = this.value.substr(0, len); return false; } } // Assign the function to the onkeyup and onblur events txts[i].onkeyup = func; txts[i].onblur = func; } }; };</code>
実装の詳細
利点
以上がイベントハンドラーを使用せずにHTMLのTextAreaに文字制限を適用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。