YADA
元々のDjangoAJAXは
- 1回の通信で1要素に分のデータしか返せない。
- effectがない
- ajax用のurl設定が必要。
1回の通信で1要素に分のデータしか返せないのは効率悪いケースがあるなあと。
でDjangoの基本的なURLの設定の他に覚えなきゃいかん事が増えるのも嫌。
なので作って0.10完成。
チョー簡単な説明
template
<input type="button" value="ボタン" onclick="{% django_ajax_link /result/ %}" />
このようにURL指定します。
ふつーにURLConfに/result/を記述すればいいです。
view.py
def result( request ): chain1 = { 'replace_html':['blk2', '<h1>AJAX</h1>'], } d = { 'replace_html':['blk1', '<h1>AJAX</h1>'], 'effect':['fade', 'blk2', 1000, None, chain1], } response = DjangoAjaxResponse( d ) return response
DjangoAjaxResponseにパラメータ渡せと。
サポートしてるイベントは
- insert_html 指定したIDの要素の指定したポジションに値を入れます
- replace_html 指定したIDの要素を置き換えます。
- effect エフェクトを実行します
また上記にもあるように全てのイベントはchain可能です。
effectは
- fade系
- colorfade系
- wipe系
をサポート
explodeはCSSが絡むので未サポート。
ふーむ、どっかで見たなーこーいうの。
イメージ沸きにくい人はRailsのRSJのサンプルでも見て下さい。
RJSはYAMLですが、こちらはシンプルdictにしました。
無駄にファイル数増やすのもどーかなと思うので。
この仕組みは言語依存あんまりないのでjava版作って仕事でつかお。
欲しい人とかいればあげます。
コメント入れて下さい。
うくく。