Hybrid View

  1. #1
    Ext JS Premium Member
    Join Date
    Jun 2010
    Posts
    29
    Vote Rating
    0
    masayuki_yamaoka is on a distinguished road

      0  

    Default TextAreaの入力文字数の制限について

    TextAreaの入力文字数の制限について


    TextAreaに入力される文字数を制限したく、ExtJs のAPIドキュメントに記載されているように、

    autoCreate: {tag: 'input', type: 'text', size: '20', autocomplete: 'off', maxlength: '10'}

    を付けてみたところ、TextFieldになってしまいます。

    以下のように、tagをtextarea にすると、表示はTextAreaになりますが、無制限に文字の入力ができてしまいます。

    autoCreate: {tag: 'itextarea, type: 'text', size: '20', autocomplete: 'off', maxlength: '10'}


    TextAreaの形式で入力文字数を制限する方法がありましたらご教示願います。

  2. #2
    Sencha - Support Team yuki's Avatar
    Join Date
    Jun 2007
    Location
    Chigasaki, Japan
    Posts
    273
    Vote Rating
    0
    yuki is on a distinguished road

      0  

    Default


    HTMLのtextareaではそもそもmaxlengthが使えないので、Ext.form.TextAreaのkeyupイベントなどで、文字数チェックするといった方法が一番簡単だと思います。
    Ext Japan, LLC [Twitter: @extjapan]
    [Ext JS / Ext GWTのライセンス販売][日本語テクニカルサポート][Ext JSトレーニング・コンサルティング]

  3. #3
    Ext JS Premium Member
    Join Date
    Jun 2010
    Posts
    29
    Vote Rating
    0
    masayuki_yamaoka is on a distinguished road

      0  

    Default


    そうなんですね。
    ということは、APIドキュメントの説明が間違っているみたいですね。

    画面数が多いので、あちこちにkeyupイベントをいれるよりも設定で何とかなればと思っていたのですが...
    keyupイベントで検討してみます。
    フォローありがとうございました。

  4. #4
    Sencha - Support Team yuki's Avatar
    Join Date
    Jun 2007
    Location
    Chigasaki, Japan
    Posts
    273
    Vote Rating
    0
    yuki is on a distinguished road

      0  

    Default


    Quote Originally Posted by masayuki_yamaoka View Post
    そうなんですね。
    ということは、APIドキュメントの説明が間違っているみたいですね。
    間違っているというよりも、autoCreateそのものの機能が、ベースとなるHTMLタグを設定できるということなので、
    Code:
    {tag:'input', type:'text'}
    を指定すれば、ベースのHTMLが<input type="text" />になるので、文字数制限ができるというだけで、tagにtextareaを指定するとHTMLの仕様として文字数制限はできない、というだけです。

    autoCreateの機能そのものが分かりにくいものだったりするのですが

    Quote Originally Posted by masayuki_yamaoka View Post
    画面数が多いので、あちこちにkeyupイベントをいれるよりも設定で何とかなればと思っていたのですが...
    keyupイベントで検討してみます。
    あちこちで似たような処理をされるのであれば、keyupイベントまわりの処理を組み込んだExt.form.TextAreaを継承したクラスを作るか、プラグインを作れば手間はかからないですよ。
    Ext Japan, LLC [Twitter: @extjapan]
    [Ext JS / Ext GWTのライセンス販売][日本語テクニカルサポート][Ext JSトレーニング・コンサルティング]

Thread Participants: 1