96

HTML のテキスト入力にどのように文字制限を課しますか?

4

6 に答える 6

133

主な解決策は 2 つあります。

純粋な HTML のもの:

<input type="text" id="Textbox" name="Textbox" maxlength="10" />

JavaScript のもの (onKey イベントに添付):

function limitText(limitField, limitNum) {
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } 
}

しかし、とにかく、良い解決策はありません。すべてのクライアントの不適切な HTML 実装に適応することはできません。勝つのは不可能な戦いです。そのため、PHP / Python /その他のスクリプトを使用して、サーバー側でチェックする方がはるかに優れています.

于 2008-09-22T08:35:34.230 に答える
43

maxlength 属性があります

<input type="text" name="textboxname" maxlength="100" />
于 2008-09-22T06:01:00.733 に答える
12

上記に加えて、クライアント側の検証(HTMLコード、javascriptなど)では決して十分ではないことを指摘したいと思います。また、サーバー側の長さを確認するか、まったく確認しないでください(人々がそれを回避できるほど重要でない場合は、それを防ぐための手順を実際に保証するほど重要ではありません)。

また、仲間、彼(または彼女)はXHTMLではなくHTMLを言った。;)

于 2008-09-22T06:08:29.887 に答える
5

他の人が言っているように、「maxlength」属性を使用します。

テキストエリアに最大文字長を設定する必要がある場合は、Javascriptを使用する必要があります。ここを見てください:JavaScriptを使用してHTMLのtextAreaにmaxlengthを課す方法

于 2008-09-22T06:08:03.867 に答える
1

<input>要素には、maxlength属性があります。

<input type="text" id="Textbox" name="Textbox" maxlength="10" />

(ちなみに、タイプは「text」であり、他の人が書いている「textbox」ではありません)ただし、<textarea>でjavascriptを使用する必要があります。いずれにせよ、長さはサーバーでチェックする必要があります。

于 2008-09-22T06:12:18.397 に答える
0

非常に高速なjqueryでmaxlengthを設定できます

jQuery(document).ready(function($){ //fire on DOM ready
 setformfieldsize(jQuery('#comment'), 50, 'charsremain')
})
于 2015-10-01T11:31:16.867 に答える