0

私は GWT RixhText Area を使用しており、 richText Area で 100 文字に制限したいと考えています。

今私はこれをやっています。

                     description.addKeyDownHandler(new KeyDownHandler(){

        @Override
        public void onKeyDown(KeyDownEvent event) {
            if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER ||
                    event.getNativeKeyCode() == KeyCodes.KEY_UP ||
                    event.getNativeKeyCode() == KeyCodes.KEY_LEFT||
                    event.getNativeKeyCode() == KeyCodes.KEY_DOWN ||
                    event.getNativeKeyCode() == KeyCodes.KEY_BACKSPACE||
                    event.getNativeKeyCode() == KeyCodes.KEY_SHIFT) {

            }else{
            if(description.getText().trim().length()>100){

            Window.alert("You have reached your maximum limit");
            }
            }
        }});

100文字に達すると正常に動作しますが、アラートを出しますが、ユーザーがそれ以上の文字を入力するのを止めるにはどうすればよいですか?

次に、このcssを使用して、エリアが終了したときに次の行自体に移動しています..正常に動作します..しかし、ユーザーがキーボードのキーを押したままにし、このcssを離さないと、動作しません。次の行に進みます..これに対する解決策はありますか

CSS:

       break-word {
  white-space: pre-wrap; /* css-3 */
 white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
 white-space: -pre-wrap; /* Opera 4-6 */
 white-space: -o-pre-wrap; /* Opera 7 */
 word-wrap: break-word; /* Internet Explorer 5.5+ */
}

ありがとう

4

2 に答える 2

4

Window.alert() の代わりに event.preventDefault( )を使用する

if(description.getText().trim().length()>=100) {
  event.preventDefault();
}
于 2013-09-12T07:47:33.270 に答える
0

100 文字以降の入力を防ぐには、次のようにします。

if(description.getText().trim().length()>100)
{
        description.setText(description.getText().substring( 0, 100 ));
        Window.alert("You have reached your maximum limit");
}
于 2013-09-12T07:25:19.393 に答える