`

struts2利用<s:fielderror/>等标签详细地控制错误消息输出格式

阅读更多
首先请看如下代码:

<s:if test="hasFieldErrors()">    
<s:iterator value="fieldErrors">    
     <s:iterator value="value">    
         <script language="JavaScript">    
             alert('<s:property/>');    
         </script>       
     </s:iterator>      
</s:iterator>    
</s:if>  
 

这样当有field错误,就会弹出错误提示!当然不alert的话 也可以在外面之间套上div,控制输出格式
但问题来了 如果有多个field错误 就会不断地弹出消息窗口
我想把所有的错误消息全部显示在一个对话框中 每条错误消息占一行
怎么才能做到呢?

经过很长时间的摸索 问题终于给解决了 现在把它分享出来

在需要显示消息的页面加入message.jsp
(或者把message.jsp的内容直接放在要显示消息的页面 )
<s:include value="message.jsp"></s:include>   

<s:include value="message.jsp"></s:include>


最好把它放在页面最后 等页面全部加载后 再显示消息
要不然 加在前面的话就可能看到页面空白 消息提示显示完成后再显示页面

message.jsp代码如下

<%@ page language="java" contentType="text/html; charset=GB18030"   
     pageEncoding="GB18030"%>    
<%@ taglib prefix="s" uri="/struts-tags"%>    
<html>    
    <body>    
         //fielderror    
     <s:if test="hasFieldErrors()">    
         <s:iterator value="fieldErrors">    
             <s:iterator value="value" status="statu">    
                //field的错误消息是List 因此还需要迭代一次         
                 <s:set name="index" value="#statu.index"/>    
                 <s:set name="msg" value="#msg==null?'':#msg+    
                 value.get(#request.index).toString()+'\\\n'"/>//关键代码    
              </s:iterator>    
         </s:iterator>    
     </s:if>    
   
         //actionerror    
     <s:if test="hasActionErrors()">    
         <s:iterator value="actionErrors">    
                <script   language="JavaScript">    
                 alert("<s:property escape="false"/>")    
                </script>    
             </s:iterator>    
     </s:if>    
   
         //actionmessage    
     <s:if test="hasActionMessages()">    
         <s:iterator value="actionMessages">    
             <script language="JavaScript">    
                 alert("<s:property escape="false"/>")    
             </script>    
         </s:iterator>    
      </s:if>    
   
         //打印转换好格式的fielderror信息    
     <s:if test="#msg.length()>0">    
         <script language="JavaScript">    
             alert("<s:property escape="false" value="#msg"/>")    
         </script>    
     </s:if>    
分享到:
评论

相关推荐

    struts2 标签库 帮助文档

    1. &lt;s:fielderror&gt;&lt;/s:fielderror&gt;-----显示文件错误信息 2. &lt;s:file&gt;&lt;/s:file&gt;-----文件上传 3. &lt;s:form action=""&gt;&lt;/s:form&gt;-----获取相应form的值 G: 1. &lt;s:generator separator="" val=""&gt;&lt;/s:...

    struts2文件上传下载

    struts2文件上传与下载, &lt;s:form name="Myform" action="/fileManage/upload" method="post" enctype="multipart/form-data" theme="simple" &gt; &lt;s:fielderror&gt;&lt;/s:fielderror&gt; &lt;s:file name="image" label=...

    Struts 2 取消 fielderror 系统默认样式

    NULL 博文链接:https://978182241.iteye.com/blog/1827062

    struts2 fielderror去掉样式

    NULL 博文链接:https://mzlly999.iteye.com/blog/1161501

    获取 STRUTS2 FIELDERROR

    STRUTS2 s:fielderror 会给我们软件开发人员带来很多不方便。而且STRUTS2提供的样式也很难调整(需要结合STRUTS2源码以及修改样式模板配置)。本人找了许多信息GOOGLE等 都没有得到满意的内容。很多人留言说 通过...

    Struts2+API+标签全解+网页说明

    将多个集合使用一个&lt;iterator/&gt;标签完成迭代。 generatot标签:将指定的字符串按照规定的分隔符分解成多个子字符串。 merge标签:将多个集合拼接在一起。 subset标签:获取某个集合的子集合。 sort标签:多指定...

    struts2中simple主题下&lt;s:fieldError&gt;标签默认样式的移除方法

    主要给大家介绍了关于struts2中simple主题下&lt;s&gt;标签默认样式的移除方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧

    如何自定义Struts2表单验证后的错误信息显示格式_好资源0分送

    前面一段时间学过一些Struts2的知识,感觉Struts2和1.x还是有很大的差别的,我还不好说1.x肯定会过时还是2.0会很快流行,这毕竟是需要作为导向的。 在Struts2中验证真的比较容易,可以在Action中直接写validate,也...

    Struts2多文件上传与邮件附件发送

    *发现struts.multipart.maxSize和fileUpload拦截器的maximumSize属性分工不同,总结如下: 1.struts.multipart.maxSize掌控整个项目所上传文件的最大的Size。超过了这个size,后台报错, 程序处理不了如此大的文件。...

    JSP_struts2标签大全

    JSP_struts2标签大全 1.a 3 2.action 3 3. actionerror 4 4. actionmessage 5 5. append 5 6. bean 7 7.checkbox 7 8.checkboxlist 8 9. combobox 9 10. conponent 9 11. date 11 12. datetimepicker 12 13. debug ...

    低清版 大型门户网站是这样炼成的.pdf

    3.2 struts 2控制标签详解 105 3.2.1 if/elseif/else标签详解 105 3.2.2 iterator标签详解 106 3.2.3 append标签详解 108 3.2.4 generator标签详解 110 3.2.5 merge标签详解 112 3.2.6 subset标签详解 113 ...

    struts2输入校验总结

    struts2输入校验总结,struts2自带的校验器,以及校验器不能做的check的处理的总结

    struts2 spring整合fieldError问题

    用到了校验框架,在jsp页面校验失败一次后,无论再次输入正确与否都跳转不到except page。

    博客附件--包下载 struts2

    附件 附件 附件 moon5284 struts2.x 已经修改了fielderror的换行样式

    validator_v10:游乐场验证器

    验证器——v10 前言 下载和介绍 ...别名验证标签,允许将多个验证映射到替代标签,盔甲更轻松地定义结构上的验证 提取自定义的片段名称,例如可以指定在验证时提取JSON名称,进入其在结果FieldError中可用

    validator:

    可自定义的i18n感知错误消息。 Web框架的默认验证器; 从gin中的v8升级到v9的方法请参见 安装 使用go get。 go get github.com/go-playground/validator/v10 然后将验证程序包导入到您自己的代码中。

    SPRING API 2.0.CHM

    FieldError FieldRetrievingFactoryBean FileCopyUtils FileEditor FileSystemResource FileSystemResourceLoader FileSystemXmlApplicationContext FilterDefinitionFactoryBean FixedLocaleResolver ...

Global site tag (gtag.js) - Google Analytics