[Seasar-user:11558] Re: [Teeda] ForEach内のAタグでインデックスを取得したい

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2007年 11月 9日 (金) 01:33:00 JST


chiitakeです。

米林さん、ありがとうございます。
自リンクの場合、DynamicPropertyでIndexを埋め込むことができました。

ただリンク先が「外部リンク(http://www.seasar.org 等)」の場合は
うまくできませんでした。

ForEachでのリンク一覧ページを「遷移させずに」、
Aタグのクリック先は、lightwindowでポップアップ表示、
なおかつ、Pageクラスのメソッドを呼んで、Indexに対応した
UrlDto[index].setOpen(true)させてDBを更新をさせたいのです。

伝わりますでしょうか?

              chiitake



<[E-MAIL ADDRESS DELETED]>さん:
> 米林です。
> 
> hrefにDynamicPropertyで動的に値を設定した方が
> スマートかと思います。
> 
> 
> それ以外であれば、以下を参考にして
> http://teeda.seasar.org/ja/extension_component_reference.html#link
> 
> <a id="goUrl" class="lightwindow"
> href="自分のhtml?urlDataIndex-y=999" title="内容">内容</a>
> 
> のようにして、パラメータにインデックスを指定出来ると思います。
> 
> お薦めなのは、DynamicPropertyで設定する方が手間が少ないと思います。
> 
> よろしくおねがいします。
> 
> ----- Original Message ----- 
> From: <[E-MAIL ADDRESS DELETED]>
> Sent: Wednesday, November 07, 2007 10:30 PM
> 
> > chiitakeです。
> > いつもお世話になっております。
> >
> >
> > ForEach内で、aタグをクリックしたとき、
> > Pageクラスのメソッドを呼んで、インデックスを取得する方法はできますか?
> >
> > aタグに対応したDto情報で、DBに更新したいためです。
> >   (リンクをクリックしたかどうかをDBに保存)
> >
> >
> > また、lightwindow.jsを使いため、aタグでこだわってます
> >   ( http://www.stickmanlabs.com/lightwindow/  )
> >
> >
> >   public String doOpenURL() {
> >    UrlDto urlDto = urlDataItems[ インデックス ];
> >   ・・・
> >     return null;
> >   }
> >
> > また、yone098さんのForEachを参考にAタグでも試しましたが、
> > ボタンと違い、Aタグの場合は nameが設定されないようで
> > 立ち止まってしまいました。
> >  (ボタンの場合: name="testForm:urlDataItems:1:doOpenURL")
> >
> >
> > ・submit button used in ForEach
> >  http://d.hatena.ne.jp/yone098/20070208/1170906454
> >
> >  s2-framework-2.4.13, Teeda 1.0.11-SP1を利用しております。
> >
> > 何か良い方法をアドバイス頂けたら嬉しいです。
> > よろしくお願い致します。
> >
> >            chiitake
> >
> > <<ソースの一部>>
> >
> > ◆Pageクラス
> >   private int urlDataIndex;
> >
> >   @SubapplicationScope
> >   private UrlDto[] urlDataItems;
> >   private int urlId;
> >   private String url;
> >
> >   public String getGoUrlHref() {
> >     return getUrl();
> >   }
> >   public String doOpenURL() {
> >    UrlDto urlDto = urlDataItems[ インデックス ];
> >   urlDto.setOpen(true);
> >   ・・・
> >     return null;
> >   }
> >
> >
> > ◆Dto  // IDとURL
> >   public class UrlDto {
> >     private int urlId;
> >     private String url;
> >     ・・・
> >   }
> >
> >
> > ◆HTML
> >   <div id="urlDataItems">
> >     <!-- ダイナミックプロパティで hrefをDTOのURLに変換 -->
> >     <a id="goUrl" class="lightwindow" href="#" title="内容"
> onclick="openURL(this.name);">内容</a>
> >
> >     <!-- ボタンだと、nameが取得できる。 -->
> >     <input type="button" id="doOpenURL" value="hello!"
> onclick="hello(this.name);" />
> >    input type="hidden" id="urlDataIndex-x" />
> >   </div>
> 
> ---
> 米林 正明
> [E-MAIL ADDRESS DELETED]
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> 




Seasar-user メーリングリストの案内