2011-11-09 20 views
0

extjsのグリッドパネルのドラッグドロップに問題があります。新しく追加された行はextjsのグリッドパネルでドラッグドロップできません

シナリオは次のとおりです。 グリッドパネルは、最初にリモートストアをロードすることによってレンダリングされます。 次に、行が追加され、動的に更新されます。 ドラッグドロップ機能は、gridpanelの "render"イベントで実装されています。 ドラッグ・ドロップは、リモート・ストアから最初に取得された行に対して正常に機能します。 しかし、新しく追加または編集された行にドラッグドロップを使用しようとすると、動作しません。

私は放火犯に次のエラーを取得しています: インデックスまたはサイズ許可量よりも負以上の「コード:」新しく追加された行は一部として取られていない、ので、1

これがあるとすることができます店の私はイベントを「クリック」に変更しようとしましたが、そのようには機能しません。

早急に解決策を提案してください。

ありがとう、 Shreya。

答えて

0

私はextのドラッグアンドドロップの2つの方法を知っています。そのうちの1つはグリッド行のみです。もう1つはドラッグゾーンとドロップゾーンの設定です。この方法では、グリッドに新しい行を追加すると発生するイベントをキャッチするだけです。その場合、新しい行をすべてドラッグゾーンに設定します(ドラッグできるようになります)。それは私が似たような状況でしたことです。これは役に立ちます:

ところで、グリッドの行には.el(この場合は行であるExtコンポーネントに添付されたDOM要素)がありません。したがって、各行コンポーネントのdivを作成し、initializeDropZone(row [x])を使用する必要があります。ここで、row [x]は新しい追加行です。