2009-08-17 20 views
3

Mojo TextField内のテキストの長さはどのようにして取得できますか?Mojo TextFieldのテキストの長さはどうやって取得できますか?

私はマルチラインTextFieldを150文字の制限で設定しようとしていますが、カウンタでそれを試みましたが、テキストが消去されたときにカウンタを減らすことができないという問題に遭遇しました。テキストを貼り付けるときに正しい番号を使用するので、文字を押すたびにテキストの長さを取得するという新しい方法がありました。

は、私はすでにこの試みた:(textFieldcharsAllow属性に呼び出される)

if (this.controller.get("mensaje").mojo.getValue().length <= 150) { 
    return true; 
} 

this.controller.get("mensaje").mojo.blur(); 
return false; 

が、それは動作しません....私は、デバッグおよび機能は、単に行の後に終了します大胆...それはtrueまたはfalseを返すことさえありません。

また、変数に長さの値を代入したり、変数にテキストを代入して長さを取得しようとしましたが、何もしませんでした。

これは同じ問題です。 getValue()の直後に戻ります。

また、おそらくこの問題のために、テキストは折り返すのではなくスクロールしますが、textFieldがフォーカスを失ったときにテキストを折り返します。

答えて

0

私の最初の推測は、「this」がcharsAllowに正しく渡されていないことです。引数として渡している関数をバインドしましたか?

1

'mensaje'がテキストフィールドのHTML IDであれば、それを取得して.innerHTML()。lengthを使用してみてください。つまり、Mojoオブジェクトの代わりにJavascript/Prototype関数を使用してDOM要素を操作します。

0

これはちょっと奇妙なことに気付きました...関数mojo.getValue()は実際には動作しますが、 "charsAllow"によって呼び出される関数の内部からではなく...また、charsAllowによって呼び出される関数は、他の関数を呼び出すのではなく、何もしない関数から抜け出すだけです...誰かがMultiLine TextFieldの文字を制限する方法を持っていますか? (モジョのテキストフィールド、外観を維持する:D)。ありがとう!!

関連する問題