[前][次][番号順一覧][スレッド一覧]

rails:816

From: Hiroshi Takagi <gollum@h...>
Date: Wed, 21 Dec 2005 09:50:56 +0900
Subject: [rails:816] Re: Dynamically Updating a Table w/AJAX

高木宏です。

On Tue, 20 Dec 2005 06:14:06 +0900
"mbaba" <xml@t...> wrote:

> 馬場@大阪です
> > 専用のCSS を用意して、整形した出力が出るように
> > 一行中のカラムごとに class 指定する、というアプローチですか?
(snip)

> ながくなりますが、CSSでdivやspanを使って表みたいに表示するという例で
> 細かい調整はわかりませんが^^;

やってみました。

<div id="items">
<%= render(:partial => 'item', :collection => @items) %>
</div>

とし、

専用CSS を public/stylesheets に定義して、
stylesheet_link_tag でこの使用を宣言し、

_item.rhtml を

<div class="linex">
  <span class="datax">
    <%= item.posted_on.strftime("%H:%M:%S") %>
  </span>
  <span class="datay">
    <%= h(item.body) %>
  </span>
</div> 

のように定義することで、見た目テーブルっぽいブロック要素に対して、
動的に、:bottom, :top への新しい行の挿入ができました。

#804 で のりおさんが指摘しているように、
Agile 本のsample script を <table> 対応に若干変更するだけで、
Firefox では <table> の動的変更が難なく実現できます。
わたしの最初のpost(#801)は、IE で動かなかったことで
”<table> は未サポートか?”と誤解したものですから、
そういう意味で、馬場さんが示してくれたものは、
IE でも使える手法として貴重です。

ありがとうございました。

p.s. 
#802 でmoriq さんが紹介されていたRJS template は、
要素への動的な追加・(全面)置換だけでなく、
DOM 中の複数のID に対して、削除を含めた操作が指定できそうで
なかなか魅力です。

伝票明細行に対する、

・新行追加(:bottom)
・(すでに表示されている)明細行の削除
・(すでに表示されている)明細行の修正

をacts_as_list とあわせてうまく定義すれば、
汎用パターンとして使いまわせそうな気がしています。

-- 
Hiroshi Takagi <gollum@h...>



--
ML: rails@r...
使い方: http://QuickML.com/
Web Site: http://wiki.fdiary.net/rails/
ML Archives: http://www.fdiary.net/ml/rails/

[前][次][番号順一覧][スレッド一覧]

       801 2005-12-18 15:36 [gollum@h...         ] Dynamically Updating a Table w/AJAX     
       802 2005-12-18 16:46 ┣[moriq@m...          ]                                       
       810 2005-12-19 15:07 ┃┗[gollum@h...         ]                                     
       803 2005-12-18 17:57 ┣[walf443@g...        ]                                       
       808 2005-12-19 01:49 ┃┗[gollum@h...         ]                                     
       804 2005-12-18 18:27 ┣[toykyo@t...         ]                                       
       807 2005-12-19 01:49 ┃┣[gollum@h...         ]                                     
       817 2005-12-21 02:03 ┃┗[moriq@m...          ]                                     
       805 2005-12-19 00:27 ┣[xml@t...            ]                                       
       812 2005-12-19 15:22 ┃┗[gollum@h...         ]                                     
       813 2005-12-19 22:14 ┃ ┗[xml@t...            ]                                   
->     816 2005-12-21 01:50 ┃  ┗[gollum@h...         ]                                 
       815 2005-12-21 00:53 ┗[moriq@m...          ]                                       
       818 2005-12-21 02:31  ┗[gollum@h...         ]                                     
       850 2006-01-04 09:01   ┗[yoshi@o...          ]                                   
       851 2006-01-04 15:06    ┗[moriq@m...          ]                                 
       852 2006-01-04 15:56     ┗[moriq@m...          ]                               
       859 2006-01-06 05:14      ┗[yoshi@o...          ]