JQueryを使用したExtJSコンポーネントのクローニング
-
03-07-2019 - |
質問
JQueryの.clone()を使用してフォームコンポーネントのクローンを作成しようとしています(実際には、コンテナ要素を複製してフィールドのコレクションを複製しています)。日付フィールド、コンボボックスが機能していないこと、minLengthなどの検証も機能していないことを除いて、すべてがうまく機能しました。
ところで、applyToを使用して古いhtmlフォームフィールドをext jsフォームフィールドに変換しているだけです
解決
問題は、jQuery clone()がイベントハンドラーを複製しないことです。 DOM要素に関連付けられています。ただし、clone(true)を使用しても イベントハンドラをコピーしますが、まだ機能しません。 JavaScript側でExtオブジェクトを複製する必要があります。
本当に多くを作成するには、Extが提供するツールを使用する必要があります 同様のコントロール。まず、カスタムExtコンポーネントを作成、 複数回インスタンス化できるようになります。
他のヒント
最初は、使用してみてください
.clone(true)
そのため、要素のすべてのイベントハンドラーがコピーされます。それとは別に、Extjsはコントロールを作成するときに他のファンキーな機能を実行するのではないかと考えています。 extjsフォーラムをざっと見て回ると、ウィジェットのクローン作成に関する多くの情報が見当たりません。
所属していません StackOverflow