`
yingxiongwudi
  • 浏览: 57893 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

<s:action>标签

 
阅读更多
这个标签主要的的作用就是迭代出集合。。

value属性表示需要跌代显示出来的值。

status属性,又来保存迭代时的一些状态值。

注:1.如果需要引用valueStack中的值,需要使用这样的形式。

<s:iterator value="#userList" /> //userList在action部分被保存在Request中,所以使用#加属性名来引用值。

2.如果集合的值是通过action的方法,假设我们的action中有一个getListMenu方法,返回一个List集合。

我们可以使用如下的形式来引用这个集合,并用s:iterator来输出。

<s:iterator value="listMenu" />

3.iterator的value使用定义好的方式,如:

<s:iterator value="{1,2,3,4}" />         //这样跌代输出的值就是1.2.3.4这四个值。

二、iterator中输出具体值,如果,在上面我们的list中的对象,有两个属性,都是String类型,一个是name,一个是url。

我们可以这样来引用。

1.      <s:property value="name" />       //这样我们将可以输出跌代对象的name属性值。

2.      如果我们希望使用<s:url />来将跳转过后的url进行处理,该如何来做?

          <s:url value="%{url}"/>            //%{}ognl的表达式,这样的值能够将url的值进行<s:url/>的处理

         实际上就是转为绝对路径。这样,我们就可以对付一些因跳转换产生的路径问题。

    原因:因为<s:iteratotr />以后,当前的对象应该就在ValueStack顶部了,这样当然的url实际上就是对象的url          属性了

三、使用ognl输出对应的值。

<s:textfield name="loginName" value="%{#request.loginNames}"/>


使用此表达式,会生成一个文本框,并且,如果request.attribute中有loginNames属性,将会做为些文本框的默认值。

如果只使用#request.loginNames在struts2的标签内部,是不会显示任何值的,注意外面加上的%{}附号,才会被正常的使用。

如果希望如EL语言一样直接输出文件,如在一个<a></a>之间的innerHTML文本为#request.loginNames的值,我们只要使用:<s:property value="#request.loginNames" />使可以正常使用!


注:

1.${}是EL语言的 %{}这样的形式是ognl表过式语言的,在struts2的标签内部,使用%{}这样的形式,在标签外部可以使用${}EL语言的方式。如果在struts2的标签内部使用${}这样的方式,会出现以下的错误提示:

According to TLD or attribute directive in tag file, attribute value does not accept any expressions

2.很多时候,我们使用struts2的一些标签,属性是需要接受集合的,如果集合是保存在 request,session,或者是值栈(非根对象的栈顶),可以使用#变量名的方式,如果获取的值是在Action中通过特定的方法来获取,就需要使用如 value="userList"这样的方式,只是去掉了前面的#。



分享到:
评论

相关推荐

    struts与jsp 使用方法

    在action里面写了方法获取一个list,再将这个list的值放到jsp页面中显示出来,用的是&lt;s:iterator&gt;标签。

    struts 2 s标签 struts 2 s标签

    struts 2 s标签 a标签创建一个HTML超链接,等价于HTML 的&lt;a href="".... 示范代码: &lt;s:a href="login.action"&gt;登陆&lt;/s:a&gt;

    struts2 标签库 帮助文档

    3. &lt;s:action name=""&gt;&lt;/s:action&gt;-----执行一个view里面的一个action 4. &lt;s:actionerror/&gt;-----如果action的errors有值那么显示出来 5. &lt;s:actionmessage/&gt;-----如果action的message有值那么显示出来 6. &lt;s:...

    struts标签库

    &lt;title&gt;action标签&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;!-- 这句会显示action请求的跳转页面success.jsp页面要显示的内容 --&gt; &lt;s:action name="action" executeResult="true"&gt;&lt;/s:action&gt; &lt;!--这句不会显示 --&gt; &lt;s:action name...

    struts2标签

    &lt;s:iterator id="rs" value="resList" status="count" &gt; &lt;/s:iterator&gt; &lt;s:iterator id="pwd" value="#request.usePwdList" status="mIndex"&gt; &lt;tr&gt; &lt;td&gt; &lt;a href="[removed]similarityPwdDeQQ('${pwd.idType...

    struts2 标签换行

    如下代码:&lt;s:form action="login2"&gt; &lt;s:textfield label="用户名" name="username"/&gt; &lt;s:password label="密码" name="password"/&gt; &lt;s:submit label="提交"/&gt;&lt;/s:form&gt;我们看着以上的代码跟HTML的差不了多少,但是...

    三大框架下分页源代码

    &lt;s:url id="url_next" value="news_findAll.action"&gt; &lt;s:param name="pageNow" value="pageNow+1"&gt;&lt;/s:param&gt; &lt;/s:url&gt; &lt;s:url id="url_first" value="news_findAll.action"&gt; &lt;s:param ...

    Struts2标签 UI标志又可以分为表单UI和非表单UI两部分

    UI标志又可以分为表单UI和非表单UI两部分。...不过,Struts 2.0加了几个我们经常在项目中用到的控件如:datepicker、doubleselect、timepicker、optiontransferselect等。...下面主要是ui标签的一些用法

    struts2讲义_吴峻申

    5.4.1 action标签使用介绍 88 5.4.2 bean标签使用介绍 89 5.4.3 date标签使用介绍 91 5.4.4 debug标签使用介绍 94 5.4.5 include标签使用介绍 95 5.4.6 push标签使用介绍 97 5.4.7 set标签使用介绍 98 5.4.8 url标签...

    freemarker语法完整版

    &lt;#if item = "spring"&gt;&lt;#break&gt;&lt;/#if&gt; ... &lt;/#list&gt; &lt;#list sequence as item&gt; ... &lt;#if item = "spring"&gt;&lt;#break&gt;&lt;/#if&gt; ... &lt;/#list&gt; 关键字 item_index:是list当前值的下标 item_has_next:判断list是否...

    struts2.0标签

    a a标签创建一个HTML超链接,等价于HTML 的&lt;a href="".... 示范代码: &lt;s:a href="login.action"&gt;登陆&lt;/s:a&gt;

    freemarker总结

    其它的运行符可以作用于数字和日期,但不能作用于字符串,大部分的时候,使用gt等字母运算符代替&gt;会有更好的效果,因为 FreeMarker会把&gt;解释成FTL标签的结束字符,当然,也可以使用括号来避免这种情况,如:&lt;#if (x&gt;y)&gt; ...

    Struts2 国际化字符串 拦截器

    &lt;s:text name="validation.required" &gt; 人心的功能,如将Action输出到FreeMaker模板、Velocity模板、JasperReports和使用XSL转换等。这些都过result里的type(类型)属性(Attribute)定义的。另外,您还可以自定义...

    dangdang和smartstruts2.rar

    &lt;s:action name="category" namespace="/main" executeResult="true"&gt;&lt;/s:action&gt; &lt;/div&gt; executeResult="true":将action返回的页面整合到此页面 左中右依次如上述所写。 写main.xml,并把main.xml,包含在...

    网上商城需求报告

    通用电子商务购物平台 ... &lt;%@taglib uri="/struts-tags" prefix="s"%&gt; &lt;img src="image.do" id="img1"/&gt; &lt;a src='image.do?'&gt;换一张试试看&lt;/a&gt; type="submit" value="注 册" onclick="return validate();" /&gt;

    java程序员必读

    内容包括:自定义类型转换器,文件上传,自定义拦截器,基于XML配置方式实现对action的所有方法进行输入校验,&lt;s:token /&gt;标签防止重复提交等等功能的介绍和详解

    人脸识别研究综述

    类似java中的import语句prefix="s" 引用的名称在页面可以使用,就像java中生成的一个对象名,以后调用的时候直接使用&lt;s:xxx/&gt;就可以了uri="/struts-tags"%表示标签库的路径。相当于import一个具体的类~ 3、&lt;form ...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    2.6.2 使用请求转发的动作标识&lt;jsp:forward&gt; 2.6.3 子动作标.iR&lt;jsp:param&gt;~使用 2.7 实战检验 2.7.1 输出九九乘法表 2.7.2 JSP中实现随机抽奖 2.8 疑难解惑 2.8.1 在JSP页面中编写中文之后不能保存 2.8.2 访问JSP...

    html入门到放弃笔记

    标记在使用时,用尖括号 "&lt;&gt;",标记的分类 1、封闭类型的标记 也称为 "双标记" , 必须成对出现 语法:&lt;标记&gt;内容&lt;/标记&gt; Demo : 1、创建 p 标记 --&lt;p&gt;...&lt;/p&gt; 2、创建 div 标记 -- &lt;div&gt;&lt;/div&gt; 3、创建 ...

    Rx的Java实现RxJava.zip

     Observable.from(names).subscribe(new Action1&lt;String&gt;() {  @Override  public void call(String s) {  System.out.println("Hello " s "!");  }  }); } 标签:RxJava

Global site tag (gtag.js) - Google Analytics