簡體   English   中英

如何在不使用復選框或單選按鈕的情況下將表中選擇的數據發送到Struts2中?

[英]How to send data selected in a table into action in Struts2 without using checkbox or radiobutton?

我有一個使用struts:iterator標記顯示的表。 表值包含在ArrayList 我在列表的每一行上都有一個編輯按鈕。 當用戶單擊編輯按鈕時,該行的內容應發送到操作和相應的結果頁面。 我不允許使用復選框和單選按鈕。

是否有一些param標簽,我可以使用將該行設置為參數並將其返回到結果頁面。 還是有辦法在會話中設置該行並將其從會話中取回? 如何在Struts2中實現這一目標?

您不應該將整個行設置為參數,只需設置行的參數id 然后,您可以在需要保存記錄時再次檢索它。 要設置參數,您可以使用如下鏈接

<s:a action="edit" value="Edit"><s:param name="id" value="%{#row[ID]}"/></s:a>   

使用以下代碼,您可以將每一行的值設置為bean,例如,當您單擊刪除鏈接時,我們可以使用<s:bean/>實例化bean類的對象,而<s:param/>可用於設置值放入bean

<s:iterator value="contactList" var="contactBean">   
<s:url id="deleteUrl" action="deleteLink">
        <s:bean name="net.viralpatel.contact.model.Contact"></s:bean>
        <s:param name="id" value="#contactBean.id"></s:param>
        <s:param name="firstName" value="#contactBean.firstName"></s:param>
    </s:url>
        <s:a href="%{deleteUrl}">
             Delete
        </s:a>
</s:iterator>

您可以使用錨標記在此行嘗試一些操作

<s:iterator value="list">
<s:url action="companyedit" var="listUrl" >
    <s:param name="id"><s:property value="id" /></s:param>
    <s:param name="operation">Edit</s:param>
</s:url>

    <s:a href="%{listUrl}"><s:property value="companyName"/></s:a>
    <s:property value="companyType" />
    .
    .
    .
</s:iterator>

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM