日期:2014-05-17  浏览次数:20843 次

struts2的action中提示信息问题!
我一直都是在Action中写这样的提示信息out.print("<script>alert('操作成功!');location='box-package!list.action'</script>");但是新来的这个项目经理说这样不好,叫我改!其实我也觉得不好,毕竟源代码中出现了中文,请高手教我用struts2中什么方式可以代替这种,或者怎么改正规点!

------解决方案--------------------
用户ajax回调函数吧
------解决方案--------------------
返回,根据struts.xml跳转 action中不应该有out.println
------解决方案--------------------
可以用Ajax回调函数。 Ajax处理了这个问题,你加个div然后在div中提示就可以了!
------解决方案--------------------
用JQUERY吧,$.post("action",{para},function(r){//do anything like alert});
------解决方案--------------------
刷新你就在JSP <% String tips = request.getAttribute("tips"); %>
script里 alert("<%=tips %>");
ACTION里 request.setAttribute("tips");
不就完了。。。咋就不會變通呢
------解决方案--------------------
你将返回的信息 写到国际化语言配置文件ApplicationResources_zh.properties中
在action里面用getText()得到就行了

或者在页面用标签将国家化信息读取出来都可以
------解决方案--------------------
此楼正解:

action:
if(){
// 有数据...你处理你的
}else{
//没数据...看这
request.setAttribute("err");
return mapping.getInputForward();//回到主页面
}

jsp:
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<body>
<c:if test=${err!=null}>
alert('信息有误,请重新输入');
</c:if>
//你的内容
</body>
</html>

你自己看着弄吧、、、我这样写应该够明白了
------解决方案--------------------
在返回action时,设定一个message,在页面中将message弹出来就行。
action ;
......
private String message;
//get and set method 

jsp

<script type="text/javascript">
alert('<s:property value="message"/>');
</script>
------解决方案--------------------
探讨
在返回action时,设定一个message,在页面中将message弹出来就行。
action ;
......
private String message;
//get and set method

jsp

<script type="text/javascript">
alert('<s:property value="message"/>');
</script……

------解决方案--------------------
action中为什么不能出现中文?
弹出框的提示信息基本都是js进行处理,其他的方式没用过,Struts的标签应该也可以实现。
如果是在新的页面显示提示信息,直接跳转到另一个页面显示呗。
------解决方案--------------------
顶6楼,页面用el表达式更方便