public String execute() {
String FORWARD="error";
System.out.println("调用execute方法");
try {
User user=new User();
HttpServletRequest request=ServletActionContext.getRequest();
List<User> us= userManagerService.managerUser(user);
request.getSession().setAttribute("us", us);
if(us!=null){
FORWARD="success";
}
jsp中的代码:
<b>用户列表页面</b>
<br>
<a href="<%=path%>/manager.action">刷新</a>
<br>
<table width="80%" border="1" cellpadding="0"
style="border-collapse: collapse;" bordercolor="#000000">
<tr>
<td>id</td>
<td>name</td>
</tr>
<c:forEach items="${us}" var="user">
<tr>
<td>${user.id }</td>
<td>${user.name}</td>
<td>
<a href="<%=path%>/logout.action?id=${user.id }">删除</a>
</td>
</tr>
</c:forEach>
</table>
问:怎么样重定向? 按下删除按钮“删除”就可以把那条记录从表中去除(按下“删除”能把那个对象删除但是还是显示在表中,要按“刷新”键才会不显示),不要通过按“刷新”按钮去除。
15 个解决方案
#1
调用Session.delete(Object obj);--obj 要删除的对象 对象里面只要一样就ok id 不就删除了吗?
#2
<a href="xxx.action?id=${xx.id}">删除</a>
action中
Map<String, Object> session = (Map<String, Object>) ActionContext.getContext().getSession();
session.get("id");
service.del(id);
service中
session.delete(xxx);(通过id获取到这条数据)
action中
Map<String, Object> session = (Map<String, Object>) ActionContext.getContext().getSession();
session.get("id");
service.del(id);
service中
session.delete(xxx);(通过id获取到这条数据)
#3
这肯定要刷新的了,那删除只是去库中删除了,你这页面还是本来 ,必须重新请求,可以在删除那做文章,点删除时直接触发刷新,不要点
#4
可以用Ajax或者是用你刚才说的,只需要一个id 然后再把all data select show page OK!
#5
大哥,你这里有链接啊,既然有链接就有整页面刷新
#6
其实你可以用jquery实现异步刷新,你可以定义一个id在包裹着表格的div上,通过ID实现局部的刷新表格,如果你实现数据库数据的删除,同事还实现jsp表行的删除,这样做不好,因为如果你delete失败,而页面的表行却删除了,这就出现了矛盾了
#7
喔,也是哈,没仔细读题,,那就用ajax吧。。
#8
你可以在完成delete Action之后重定向到取得用户信息Action上 之后在跳转到你这个页面输出信息就行了
在struts.xml中配置redirectAction
在struts.xml中配置redirectAction
#9
DEL之后ACTION跳转
#10
使用ajax和jquery吧,这情况在做网页系统很是常见的
精确、模糊查询,删除,或者其他处理都会对原数据列表做出改变的。
引入jquery.js和jquery.dataTables.js 实现对table数据的无刷新更改
你的操作链接个action即可。
另外,你的删除操作应该加一个“是否确认”警告框。在链接后添加onclick="return del(); js判断一下
精确、模糊查询,删除,或者其他处理都会对原数据列表做出改变的。
引入jquery.js和jquery.dataTables.js 实现对table数据的无刷新更改
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
oTable = $('#example').dataTable( {
"bJQueryUI" : true,
"sPaginationType" : "full_numbers"
});
});
</script>
你的操作链接个action即可。
另外,你的删除操作应该加一个“是否确认”警告框。在链接后添加onclick="return del(); js判断一下
#11
你为什么要把数据放到session去呢,session作用域是很大的,放到request,或是每次查询完的数据在放到session之前先把之前的session清空了。
#12
感谢各位热心的答复
问题可以说解决了,也可能不是最好的办法。
我在“删除”那个ation中新建了一个get方法,这个方法的作用是在那个对象删除后再一次得到User表里面的所有对象,再return回去,问题就ok了。
答案来源:
另外你们说的ajax,我不懂,有时间看一下,看能不能解决。
问题可以说解决了,也可能不是最好的办法。
我在“删除”那个ation中新建了一个get方法,这个方法的作用是在那个对象删除后再一次得到User表里面的所有对象,再return回去,问题就ok了。
答案来源:
http://zhidao.baidu.com/question/415775433.html
另外你们说的ajax,我不懂,有时间看一下,看能不能解决。
#13
#14
#15
#1
调用Session.delete(Object obj);--obj 要删除的对象 对象里面只要一样就ok id 不就删除了吗?
#2
<a href="xxx.action?id=${xx.id}">删除</a>
action中
Map<String, Object> session = (Map<String, Object>) ActionContext.getContext().getSession();
session.get("id");
service.del(id);
service中
session.delete(xxx);(通过id获取到这条数据)
action中
Map<String, Object> session = (Map<String, Object>) ActionContext.getContext().getSession();
session.get("id");
service.del(id);
service中
session.delete(xxx);(通过id获取到这条数据)
#3
这肯定要刷新的了,那删除只是去库中删除了,你这页面还是本来 ,必须重新请求,可以在删除那做文章,点删除时直接触发刷新,不要点
#4
可以用Ajax或者是用你刚才说的,只需要一个id 然后再把all data select show page OK!
#5
<a href="xxx.action?id=${xx.id}">删除</a>
action中
Map<String, Object> session = (Map<String, Object>) ActionContext.getContext().getSession();
session.get("id");
service.del(id);
service中
session.delete(xxx);(通过id获取到这条数据)
大哥,你这里有链接啊,既然有链接就有整页面刷新
#6
其实你可以用jquery实现异步刷新,你可以定义一个id在包裹着表格的div上,通过ID实现局部的刷新表格,如果你实现数据库数据的删除,同事还实现jsp表行的删除,这样做不好,因为如果你delete失败,而页面的表行却删除了,这就出现了矛盾了
#7
<a href="xxx.action?id=${xx.id}">删除</a>
action中
Map<String, Object> session = (Map<String, Object>) ActionContext.getContext().getSession();
session.get("id");
service.del(id);
service中
session.delete(xxx);(通过id获取到这条数据)
大哥,你这里有链接啊,既然有链接就有整页面刷新
喔,也是哈,没仔细读题,,那就用ajax吧。。
#8
你可以在完成delete Action之后重定向到取得用户信息Action上 之后在跳转到你这个页面输出信息就行了
在struts.xml中配置redirectAction
在struts.xml中配置redirectAction
#9
DEL之后ACTION跳转
#10
使用ajax和jquery吧,这情况在做网页系统很是常见的
精确、模糊查询,删除,或者其他处理都会对原数据列表做出改变的。
引入jquery.js和jquery.dataTables.js 实现对table数据的无刷新更改
你的操作链接个action即可。
另外,你的删除操作应该加一个“是否确认”警告框。在链接后添加onclick="return del(); js判断一下
精确、模糊查询,删除,或者其他处理都会对原数据列表做出改变的。
引入jquery.js和jquery.dataTables.js 实现对table数据的无刷新更改
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
oTable = $('#example').dataTable( {
"bJQueryUI" : true,
"sPaginationType" : "full_numbers"
});
});
</script>
你的操作链接个action即可。
另外,你的删除操作应该加一个“是否确认”警告框。在链接后添加onclick="return del(); js判断一下
#11
你为什么要把数据放到session去呢,session作用域是很大的,放到request,或是每次查询完的数据在放到session之前先把之前的session清空了。
#12
感谢各位热心的答复
问题可以说解决了,也可能不是最好的办法。
我在“删除”那个ation中新建了一个get方法,这个方法的作用是在那个对象删除后再一次得到User表里面的所有对象,再return回去,问题就ok了。
答案来源:
另外你们说的ajax,我不懂,有时间看一下,看能不能解决。
问题可以说解决了,也可能不是最好的办法。
我在“删除”那个ation中新建了一个get方法,这个方法的作用是在那个对象删除后再一次得到User表里面的所有对象,再return回去,问题就ok了。
答案来源:
http://zhidao.baidu.com/question/415775433.html
另外你们说的ajax,我不懂,有时间看一下,看能不能解决。