View Full Version : グリッドのソートの矢印について
ak_ext
7 Jun 2009, 9:09 PM
http://extjs.com/deploy/dev/examples/grid/array-grid.html
などのグリッドサンプルでヘッダ列をクリックするとソートされると思うのですが、
この後、ヘッダーグリッド内に出る▼▲を
意図的に初期表示の状態(▲が出ない)に戻す事はできるのでしょうか。
処理としては
ソートする→▲が出る
→ある処理をすると初期検索が走る→▲が消えるを実現したいです。
通信してデータを取ってきても、
グリッド内は変わるのですが、ヘッダーの▲の同期が取れません。
ak_ext
8 Jun 2009, 3:04 AM
を使って▲のない状態に戻そうと思ったのですが、
セットするのがASCかDESCしかないみたいで、
どこでこの▲表示を制御しているか分かりません。
ak_ext
9 Jun 2009, 1:40 AM
を作ってみました。
任意のカラムでソートをした後
テストボタンを押下して、ソートを初期状態(▲なし)に戻したいです。
ソートを制御してるのはsort-asc,sort-descなので
これをgetViewで取り除こうとしたけど、できませんでした。
ヘッダーをキャッチできればできそうです。
ak_ext
10 Jun 2009, 12:26 AM
英語のサイトで
var el = this.firstGrid.getGridEl();
el = el.dom.firstChild;
var cs = el.childNodes;
this.el = new E(el);
this.mainWrap = new E(cs[1]);
this.mainHd = new E(this.mainWrap.dom.firstChild);
var hds = this.mainHd.select('td.x-grid3-cell').removeClass(sc);
↑ソートクラスじゃないのですが、ソートも同じ原理で外すような気がしました。
でも何をしてるか良く分からないです。
多分グリッドの特定の列のヘッダーを取得、
そのグリッドの中のtd.sort-asc や descをselectして
最後にそいつをremoveClassしてあげる?
グリッドヘッダーのソートの▲を消すのが、
こんなに大変だとは思わなかったです。
ak_ext
10 Jun 2009, 3:14 AM
できました。サンプルを上げます。
ただソートの画像は初期化できても、
内部でソートの状態をもってるみたいで、
初期化後、同じ列をソートしようとすると、
降順になってしまいます。
初期表示された後は、すべての列が
最初昇順にソートされるので、
直せれば直したいですが、
もっと内部で処理してそうなので、
ここはしょうがないかもですね・・
Powered by vBulletin® Version 4.1.5 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.