0

struts2 でオブジェクトのテーブルを追加/編集/削除する必要があります。フォームを送信すると、オブジェクトが複製されます。

どこでミスをしたか教えてください。

これは私のコードです:

<s:form action="addPromotionLineItems" id="promotionLineItemsAddFormId">
    <display:table id="data"
        name="lstPromotionLineItems" sort="external" uid="row" htmlId="rowid"
        class="tborder" excludedParams="*" style="width:100%" export="false">
        <display:column titleKey="table.title.material" style="width:100px">
            <s:property value="%{#attr.row.materialCode}" />
            <s:hidden
                name="lstPromotionLineItems(%{#attr.row_rowNum-1}).promotionLineItemId"
                value="%{#attr.row.promotionLineItemId}" />
            <s:hidden
                name="lstPromotionLineItems(%{#attr.row_rowNum-1}).materialCode"
                value="%{#attr.row.materialCode}" />
            <s:hidden
                name="lstPromotionLineItems(%{#attr.row_rowNum-1}).material.description"
                value="%{#attr.row.material.description}" />
            <s:hidden
                name="lstPromotionLineItems(%{#attr.row_rowNum-1}).programId"
                value="%{#attr.row.programId}" />
        </display:column>
        <display:column property="material.description"
            titleKey="table.title.materialdesc" />

</s:form>



function refreshTableRecords(url,formNameId,resultId)
    $.ajax({
        type:'POST',
        url: url,
        data:$('#'+formNameId).serialize(),
        success : function(response) {
            $('#'+resultId).html(response); 
            },
            error:function(data)
            {
                alert(data);
            }
        });
}

このコンテンツは jQuery ui モーダル ポップアップにあります。

4

1 に答える 1

0

ストラットでコレクション データにマッピングする場合、構文は次のようにではないと思います。

name="lstPromotionLineItems(%{#attr.row_rowNum-1}).promotionLineItemId"

それよりも:

name="lstPromotionLineItems[%{#attr.row_rowNum-1}].promotionLineItemId"

入力名の row_num 属性を囲むブラケットには、わずかな違いがあります。

于 2012-07-27T20:59:43.290 に答える