これはいい!
ajaxなGUI部品”dhtmlxMenu”を調達。
ajax・・ということは、非同期通信、XMLを使っているという意味なのだが、何が気に入ったって、メニューの内容をXMLで記述する点。Javascriptの配列とソースが混在してわけが分からなくなったり、階層が増えるに従ってイライラが増していたところ、XMLならその辺がとっても自然に書けるし、直感的に理解できる。
スキンが用意されているのと、メニューにアイコンを使えるし、多階層化も簡単。もちろんクロスブラウザ対応でGPLライセンス。(商用利用の場合は、オープンソースプロジェクトならいいよ!っていうライセンス)
早速、メニュー用のデータをサーバーサイドから書き出して、クライアントで描画。
使い方は簡単!と言いたいところだが、encoding=Shift_JISとすることと、XML内の&文字を&で置き換える部分に気づかず、少々時間が掛かってしまった。アイコンは今まで使っていたのから、チマチマと切り出して完成。
サーバーサイドでXMLを書き出す部分では、アクセスユーザの権限によって内容を変化させている。
まだ変数を拾ってきてURL引数を動的に変更する部分は出来ていないが、そこさえ出来てしまえば完璧なメニューが出来上がる。
サーバでデータを抽出・判定→XMLを送りつける→クライアントが描画する
「かっちょいい!」