gpt4 book ai didi

java - 无法获取用于删除的 Struts2-jquery-grid 行 ID

转载 作者:行者123 更新时间:2023-11-30 09:31:44 25 4
gpt4 key购买 nike

我正在使用 Jquery Grid 在 struts 2 中开发一个小应用程序来显示数据结果。

当我点击编辑按钮时,特定的行 ID 就会出现。但是当我单击删除该行的删除按钮时,它的 id 不会出现。如何在对选定行执行删除操作时获取行的id(Struts2 Jquery Grid)?

请帮助我。

myJspFile.jsp

  <%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>

<%@ taglib prefix="sjg" uri="/struts-jquery-grid-tags"%>
<jsp:include page="../../loginCheck.jsp" />
<html>
<head>
<title>Hello World</title>
<style type="text/css">
@import
url(<%=request.getContextPath()%>/css/style1.css);
</style>
<sj:head jqueryui="true" jquerytheme="le-frog"/>
</head>
<body>
<div id="setpage"> <s:url id="editurl" action="nedit"/>
<s:url id="editurl" action="nedit"/>
<s:url id="remoteurl" action="ntable"/>
<sjg:grid
id="gridtable"
caption="Subject Setup Navigator"
dataType="json"
href="%{remoteurl}"
pager="true"
rowList="10,20,100"
rowNum="5"
navigator="true"
width="999"
navigatorSearchOptions="{sopt:['eq','ne','lt','gt']}"
navigatorAddOptions="{height:280,reloadAfterSubmit:true}"
navigatorEditOptions="{height:280,reloadAfterSubmit:false}"
navigatorEdit="false"
navigatorView="false"
navigatorDelete="true"
navigatorDeleteOptions="{height:280,reloadAfterSubmit:true}"
gridModel="gridModel"
editurl="%{editurl}"
editinline="true"
onSelectRowTopics="rowselect"

>
<sjg:gridColumn name="subjectId" index="subjectId" title="SubjectId" formatter="integer" sortable="false" key="true" hidden="true" />
<sjg:gridColumn name="subjectName" index="subjectName" title="Subject Name" sortable="true" search="true"
editable="true"
edittype="text" />
</sjg:grid>
<br/>

</div>
</body>
</html>

MyActionClass.java

    /*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package v.esoft.actions.subjectdetails;
import com.opensymphony.xwork2.ActionSupport;
import java.text.SimpleDateFormat;
import com.opensymphony.xwork2.ModelDriven;
import v.esoft.dao.SubjectdetailsDAO.SubjectdetailsDAO;
import v.esoft.pojos.Subjectdetails;

public class SubjectdetailsEditAction extends ActionSupport implements ModelDriven<Subjectdetails>
{
private static final long serialVersionUID = -6659925652584240539L;
private String oper;
int subjectId;
Subjectdetails subject=new Subjectdetails();
SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd");
SubjectdetailsDAO dao=new SubjectdetailsDAO();


@Override
public Subjectdetails getModel()
{
return subject;
}

public String execute() throws Exception
{
System.out.println(subject.getSubjectId());
if(oper.equalsIgnoreCase("add"))
{
System.out.println ("inside action");
dao.saveOrUpdateSubject(subject);
}
else if (oper.equalsIgnoreCase("edit"))
{
dao.saveOrUpdateSubject(subject);
}
else if (oper.equalsIgnoreCase("del"))
{
System.out.println("subjectId");
System.out.println(subject.getSubjectId());
// dao.deleteSubject(subjectId);
}
return SUCCESS;
}
//---------------
public String getOper() {
return oper;
}

public void setOper(String oper) {
this.oper = oper;
}


public Subjectdetails getSubject() {
return subject;
}


public void setSubject(Subjectdetails subject) {
this.subject = subject;
}
public int getSubjectId() {
return subjectId;
}
public void setSubjectId(int subjectId) {
this.subjectId = subjectId;
}


}

Subjectdetails.java [我的pojo]

 package v.esoft.pojos;

// Generated Oct 6, 2012 1:58:21 PM by Hibernate Tools 3.4.0.CR1

import java.util.Date;

/**
* Subjectdetails generated by hbm2java
*/
public class Subjectdetails implements java.io.Serializable {

private int subjectId;
private String subjectName;
private Integer createrId;
private Date createdDate;
private Integer updateId;
private Date updatedDate;

public Subjectdetails() {
}

public Subjectdetails(int subjectId) {
this.subjectId = subjectId;
}


public Subjectdetails(int subjectId, String subjectName, Integer createrId,
Date createdDate, Integer updateId, Date updatedDate) {
this.subjectId = subjectId;
this.subjectName = subjectName;
this.createrId = createrId;
this.createdDate = createdDate;
this.updateId = updateId;
this.updatedDate = updatedDate;
}

public int getSubjectId() {
return this.subjectId;
}

public void setSubjectId(int subjectId) {
this.subjectId = subjectId;
}

public String getSubjectName() {
return this.subjectName;
}

public void setSubjectName(String subjectName) {
this.subjectName = subjectName;
}

public Integer getCreaterId() {
return this.createrId;
}

public void setCreaterId(Integer createrId) {
this.createrId = createrId;
}

public Date getCreatedDate() {
return this.createdDate;
}

public void setCreatedDate(Date createdDate) {
this.createdDate = createdDate;
}

public Integer getUpdateId() {
return this.updateId;
}

public void setUpdateId(Integer updateId) {
this.updateId = updateId;
}

public Date getUpdatedDate() {
return this.updatedDate;
}

public void setUpdatedDate(Date updatedDate) {
this.updatedDate = updatedDate;
}

}

最佳答案

我遇到了完全相同的问题。 log4j 调试帮助我解决了它。即使您在 .jsp 的 subjectId 字段中使用了“key="true"”,id 仍会简单地作为“id”传递。

因此,在您的操作中,而不是:

int SubjectId;

尝试:

private int id;

并定义它的 getter 和 setter。

关于java - 无法获取用于删除的 Struts2-jquery-grid 行 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12792961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com