使用 struts2 和 javascript 更新 table 中的特定记录

Update a particular record in a table using struts2 and javascript

如何使特定记录可编辑并在更改字段后更新到该特定记录。我从未使用过 JavaScript 所以我在 javascript、Struts 2 和休眠之间面临很多困惑。以下是帮助我所需的 material。 我想:

  1. 使特定记录可编辑。
  2. 更新该记录

organizationTable.jsp

<display:table id="record" name="listOfOrganization" requestURI="/organization" pagesize="10">
    <display:caption>Organization Records</display:caption>
    <display:column property="id" />
    <display:column property="name" />
    <display:column property="ceo" />
    <display:column property="address" />
    <display:column property="establishedDate" />
    <display:column property="category" />
    <display:column property="url" />
    <display:column property="phoneNumbers" />
    <display:column property="fax" />
    <display:column property="status" />
    <display:column media="html">
        <form action="">
            <input type="submit" value="Update" />
        </form>
    </display:column>
</display:table>

组织class

@Entity
@Table(name="ORGANIZATION")
public class Organization {
@Id @Column(name="UID")
    private String id;
    @Column(name="NAME")
    private String name;
    @Column(name="CEO")
    private String ceo;
    @Column(name="ADDRESS")
    private String address;
    @Column(name="ESTABLISHED_DATE")
    private String establishedDate;
    @Column(name="CATEGORY")
    private String category;
    @Column(name="URL")
    private String url;
    @Column(name="PHONE_NUMBERS")
    private String phoneNumbers;
    @Column(name="FAX")
    private String fax;
    @Column(name="STATUS")
    private String status;
// setters & getters
}

快照

DisplayTag 已经很老了,最新版本是 2008 年的;

如果可以(例如,如果您没有向现有的大型遗留项目添加功能,而是刚开始 and/or 现在开始一个新项目),我建议您投资今天花点时间学习 jqGrid, probably the best grid out there

您的具体案例以及示例和完整代码在in the demo page下可用

  1. 行编辑(新) 基本示例

  2. 行编辑(新) 自定义编辑

请注意,由于您正在使用 Struts2,而您不知道 Javascript,您可能会对更简单的方法感兴趣,即使用 GridTag from the Struts2-jQuery-Grid-plugin created by jogep.

看看 the Struts2-jqGrid Showcase to see what it can do,
and at the documentation 了解如何(很容易)做到这一点。