我的清单如下: -
UserName action
=================
abcd delete
1234 delete
我的jsp代码如下: -
<table>
<tr>
<th>UserName</th>
<th>Action</th>
</tr>
<s:iterator value="list">
<tr>
<td><s:property value="name" /></td>
<td><a href="<s:url action='deleteUser'/>">delete</a></td>
</tr>
</s:iterator>
</table>
如何使用从列表中删除用户的ajax调用操作并刷新列表
答案 0 :(得分:6)
对于简单的ajax刷新功能,我会这样做
首先是包含像这样的列表的div
<div id="results">
<s:include page="ListUser.jsp">
</div>
ListUser.jsp将包含我要刷新和显示的用户列表
<table>
<tr>
<th>UserName</th>
<th>Action</th>
</tr>
<s:iterator value="list">
<tr>
<td><s:property value="name" /></td>
<td><a class=""linkDelete" href="<s:url action='deleteUser'/>">delete</a></td>
</tr>
</s:iterator>
</table>
一个简单的jquery ajax请求看起来像这样
$("a.linkDelete").click(function(e) {
//this line will prevent the default form submission on click of link
e.preventDefault();
//fire the ajax request on this object referring to the clicked anchor link element
$(this).ajax({
url: "DeleteAction.action",
cache: false
}).done(function( html ) {
$("#results").append(html);
});
});
DeleteAction.action是struts.xml看起来像这样
<action name="DeleteAction" method="deleteUser">
<result>/WEB-INF/jsp/ListUser.jsp</result>
</action>
如果您还有其他操作也有结果链接,那么您将进入结果页面 以下是struts.xml中的另一个条目
<action name="ResultAction" method="goToResultPage">
<result>/WEB-INF/jsp/Result.jsp</result>
</action>
您的Result.jsp将包含带有id结果的div。
欢呼:)