2016-04-10 10 views
1
<c:forEach items="${customer.iscutomer}"> 
<div> 
<i>${customer.customerNumber}. </i> 
    <li> 
     <a href="Javascript:void(0)">${customer.customerName}</a> 
    </li> 
</div> 
</c:forEach> 

ユーザーが任意のハイパーリンク(顧客オブジェクトの顧客名)を選択したときに、Struts2で顧客名を取得する方法がわかりません。アンカータグがループ内にあるときにアンカータグの値を取得する

+0

リンクをクリックするとバインドするJavaScriptがありますか?ユーザーがリンクをクリックするとどうなりますか? –

+0

javascriptから私はiタグの価値を得ることができます、私はちょうどjavascriptを使って孤独を見つけたいと思います。 – kali53

+0

はい、javascriptでアクションユーザーをビルドしているようです。だからそこから 'customerNumber'を取得する必要があります。しかし、JavaScriptを使わずにそれをやりたければ、@RomanCで述べたように 'strutsタグ'を使ってurlを構築し、 'customerNumber'を追加してください。 –

答えて

0

が、これはあなたが開始するために助けることができるかもしれませ:

<c:forEach items="${customer.iscutomer}"> 
<div> 
<i>${customer.customerNumber}. </i> 
    <li> 
     <s:a name="foo" namespace="bar"> 
       <s:param name="customerName">${customer.customerName}</s:param> 
       <s:param name="customerNubmber">${customer.customerNumber}</s:param> 
    </s:a> 
    </li> 
</div> 

私はs:a urlをリンクするためのパラメータを追加していないことが判明ご検討ください。今すぐあなたの生成されたリンクは、あなたが持つことができ、あなたのJSで/foo/bar/action?customerName=joe&customerNumber=1

ありませんようになります。

$('a').bind('click',function(){ 
    var url = ($(this).attr('href')); 
    var customerName= getURLParameter(url, 'customerName'); 
    var customerNumber= getURLParameter(url, 'customerNumber'); 
    //calling the ajax function 
    pop(cat, typ) 
}); 

あなたはAJAX呼び出しを持つようにしたい場合は、支柱2 jQueryプラグインを見てください。

+0

このコードは解決策には合致しません。あなたの与えられた解決策は私の側からすでに作られています。私はJavaScriptやjqueryを使いたくありません。ソリューションを提供する。 – kali53

1

Strutsアンカータグを使用してURLにパラメータを追加できます。

<s:a href="url"><s:param name="customerName">${customer.customerName}</s:param>CustomerName</s:a> 

タグの本文にELを使用できることに注意してください。

+0

アンカータグを実行すると、私はタグから値を取得し、サイドBeanに配置する必要があります。 – kali53

+0

'param'タグはアンカータグを値でパラメタ化するので、行う必要はありません。 –

+0

正しいことを説明していますが、私はcustomerNumberを取得しました。私の側から検証する必要があります。 – kali53

関連する問題