1

JQuery

 jQuery.noConflict();
    jQuery(document).ready(function(){

        jQuery("#stallId").change(function(e){

            //prevent default action
            e.preventDefault();

            jQuery.ajax({

                url: "getProducts.html?method=Product&stallId="+document.getElementById("stallId").value,
                dataType: "json",
                success: function(json){
                    if(json.status == true){
                        var strHtml='';
                        strHtml=+"";                  
                        for(var i=0;i<json.promotionProductList.length;i++){

                        }

                    }                   

                },
                failure: function(){
                    alert( "FAILED" );
                }
            });

        });
    });

表示タグ

 <display:table name="ProductList" id="product" class="table" export="false">
    <display:column escapeXml="true" titleKey="productForm.name">

    </display:column>
</display:table>

インアクションクラス

Map productMap = new HashMap();
productMap.put("id", "1");
productMap.put("name", "Coca Cola");                

List<Product> productList = new ArrayList<Product>();
productList.add(productMap);

jsonWriter.object()
    .key("status").value(true)                   
    .key("pList").value(productList)
    .endObject();

ajaxを使用して表示タグにjsonデータをロードする方法は? ドロップダウンリストからストールを選択すると、URL がバックエンド アクション クラスに送信され、製品のマップのリストを取得できますが、データを表示タグに表示する方法がわかりません。誰かが私を助けて、データをロードする方法を教えてくれませんか? ところで、私はストラット1を使用しています。

4

1 に答える 1

1

表示タグ部分をfirebugで確認したところ、表示タグが通常のhtmlテーブルに変更されることがわかりました。だからajaxで:

success: function(json){
    if(json.status == true){
        var strHtml='';                
        for(var i=0;i<json.pList.length;i++){
        strHtml+='<tr><td>'"+json.pList[i].name+"'</td></tr>';  
        }
    jQuery("table#product tbody").html(strHtml);
    }                   

},

jQuery("table#product tbody") では、"table" は表示テーブル タグを指し、#product は表示テーブル ID を指します。

于 2013-08-28T05:32:53.327 に答える