私は単純な質問であるように見えますが、私はこの時点でかなり困惑しています。いくつかのExt.JSベースのUIコードに取り組んでいます。フォームフィールド内のテキストの値を変更したいと思います。TextFieldでsetValueを使用する正しい方法は何ですか?
フィールドはext.js.TextFieldです。
私はこのようなコードを持っている:私はこのコードを実行した場合
var foo = this.getForm().findField('myFooField');
console.log(foo);
foo.setValue("text different that is different from the default");
、「foo」が間違いなくコンソールにログインして取得され、そしてそれは私が期待する値が移入正しいオブジェクトですが。しかし、setValueの呼び出しは何もしないようです。
setValueの前後にいくつかのトレース呼び出しを入れて、本当に実行されていることを確認してください。すべてが問題なく起きているようです。 UIが私の変更を反映していないことだけです。私は "setRawValue"と呼んでみましたが、違いはありません。
提案がありますか?とても有難い!あなたのコードが右に見える
setValue()は正常に動作するはずです。 Extコンポーネントとしてフィールドへの参照を取得して、差があるかどうかを確認してください。つまり、 var foo = Ext.getCmp( 'myFooField'); – legendofawesomeness
最初の行に 'this'とは何ですか?あなたのコードを再現しようとしていて、 '.getForm()'が未定義になっています。 –
フォームの完全なコードを共有できますか?問題は、setValue()の反映が瞬間的で、値がテキストボックスにすぐに取り込まれるため、作成されたコードに関連するようです。また、何かエラーがスローされますか? – netemp