struts2 的标签<s:property value=''/> escape 属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2 的标签<s:property value=''/> escape 属性相关的知识,希望对你有一定的参考价值。

参考技术A 标签的escape属性默认值为true,即不解析html代码,直接将其输出。
若想要输出html的效果,则要改为false
希望可以帮到你
参考技术B 恩,当然会有标签代码,如果你想不显示这些标签代码,可以使用struts2标签的escape属性
比如:<s:property
value="#strValue"
escape="false"/>

Struts2--简单的数据校验

action没有request, response等属性, 无法往前台传信息, 

出来一个概念, valuestack: 存放action的属性, 还有各种error等...

<s:property>专门取valuestack和context的属性

jsp显示文件:

使用addFieldError方法和s:fieldError标签简单处理数据校验
<a href="user/user!add?name=a" >添加用户</a>

 

struts.xml :

 <package name="user" extends="struts-default" namespace="/user">
        <action name="user" class="com.bjsxt.struts2.user.action.UserAction">
            <result>/user_add_success.jsp</result>
            <result name="error">/user_add_error.jsp</result>
        </action>
    </package>

action:

package com.bjsxt.struts2.user.action;

import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport {
	private String name;
	
	public String add() {
		if(name == null || !name.equals("admin")) {
			this.addFieldError("name", "name is error");
			this.addFieldError("name", "name is too long");
			return ERROR;
		} 
		return SUCCESS;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}	
}

 

user_add_error.jsp如何拿到field error值? 用struts标签

需要在jsp前面加上 <%@taglib uri="/struts-tags" prefix="s" %>

<%@taglib uri="/struts-tags" prefix="s" %>


<body> User Add Error! <s:fielderror fieldName="name" theme="simple"/> <br /> <s:property value="FieldErrors.name[0]"/> <s:debug></s:debug> </body>

以上第一种显示方式会被绑架显示格式, 在显示错误信息之前会显示一个.

第二种方式就可以直接提取出来. <s:property value="FieldErrors.name[0]"/>

  

以上是关于struts2 的标签<s:property value=''/> escape 属性的主要内容,如果未能解决你的问题,请参考以下文章

struts2 s:property标签获取日期

关于Struts2 标签<s:property>中文乱码问题

Struts2标签

struts2标签

struts2框架之标签

struts2标签库