`
violasogni
  • 浏览: 22368 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类

JSP遍历显示为多列

阅读更多
JSP遍历显示为多列
<tr>  
  <td height="26" bgcolor="#FFFFFF" align="right" rowspan="2">  
    授予角色:  
  </td>  
  <td bgcolor="#FFFFFF" align="left" colspan="3">  
  <table width="320">  
    <tr>  
     <s:iterator id="xtjss" value="xtjs" status="statu">  
      <td >  
        <input type="checkbox" name="xtjss<s:property value='#xtjss.jsdm'/>"  value="<s:property value='#xtjss.jsdm'/>"/>  
         <s:property value='#xtjss.jsmc'/>  
      </td>  
      <s:if test="%{#statu.index > 0 && (#statu.index+1)%3==0}">  
        </tr><tr>  
      </s:if>  
     </s:iterator>  
    </tr>  
  <tr>  
  <td colspan="2">  
    <input type="checkbox" name="selectAll" id="selectAll"   onclick="setAll()"/>  
      全选  
    </td>  
  </tr>  
  </table>  
  </td>  
</tr>                         </tr> 

<tr>
  <td height="26" bgcolor="#FFFFFF" align="right" rowspan="2">
    授予角色:
  </td>
  <td bgcolor="#FFFFFF" align="left" colspan="3">
  <table width="320">
    <tr>
     <s:iterator id="xtjss" value="xtjs" status="statu">
      <td >
        <input type="checkbox" name="xtjss<s:property value='#xtjss.jsdm'/>"  value="<s:property value='#xtjss.jsdm'/>"/>
         <s:property value='#xtjss.jsmc'/>
      </td>
      <s:if test="%{#statu.index > 0 && (#statu.index+1)%3==0}">
        </tr><tr>
      </s:if>
     </s:iterator>
    </tr>
  <tr>
  <td colspan="2">
    <input type="checkbox" name="selectAll" id="selectAll"   onclick="setAll()"/>
      全选
    </td>
  </tr>
  </table>
  </td>
</tr> </tr>
其中“#statu.index > 0 && (#statu.index+1)%3==0”条件,是0、1、2换行3、4、5再换行。。。
主要就是用了下iterator 标签的status属性
以下是网上找的一些资料:
struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几个简单的demo:
s:iterator 标签有3个属性:
    value:被迭代的集合
     id  :指定集合里面的元素的id
   status:迭代元素的索引

1:jsp页面定义元素写法 数组或list
Java代码
<s:iterator value="{'1','2','3','4','5'}" id='number'>   
     <s:property value='number'/>A   
</s:iterator>  

<s:iterator value="{'1','2','3','4','5'}" id='number'>
     <s:property value='number'/>A
</s:iterator>
打印结果为: 1A2A3A4A5A

2:索引的用法
如果指定了status,每次的迭代数据都有IteratorStatus的实例,它有以下几个方法
int getCount()返回当前迭代了几个元素
int getIndex()返回当前元素索引
boolean isEven()当然的索引是否偶数
boolean isFirst()当前是否第一个元素
boolean isLast()
boolean isOdd()当前元素索引是否奇数
Java代码
<s:iterator value="{'a','b','c'}" id='char' status='st'>   
     <s:if test="#st.Even">   
         现在的索引是奇数为:<s:property value='#st.index'/>   
     </s:if>   
     当前元素值:<s:property value='char'/>   
</s:iterator>  

<s:iterator value="{'a','b','c'}" id='char' status='st'>
     <s:if test="#st.Even">
         现在的索引是奇数为:<s:property value='#st.index'/>
     </s:if>
     当前元素值:<s:property value='char'/>
</s:iterator>
3:遍历map
value可以直接定义为:
value="#{"1":"a","2":"b"}"
每个元素以都好隔开。元素之间的key和value 冒号隔开
value也可以是数据栈里面的java.util.Map对象
遍历写法如下:
Java代码
<s:iterator value="map" id="id" status="st">   
      key : <s:property value='key'/>   
      value:<s:property vlaue='value'/>   
</s:iterator>  

<s:iterator value="map" id="id" status="st">
      key : <s:property value='key'/>
      value:<s:property vlaue='value'/>
</s:iterator> 当然key 和value 都可以使java 的 Object

4:遍历数据栈.简单的List类,
Java代码
List<Attr>   
class Attr{String attrName;String getAttrName(){return "123";}}  
<s:iterator value="label" id="id">   
     <s:property value="#id.attrName" />   
</s:iterator>  

List<Attr>
class Attr{String attrName;String getAttrName(){return "123";}}
<s:iterator value="label" id="id">
     <s:property value="#id.attrName" />
</s:iterator> 当然value 还可以写成 value="%{label}" label可以有.操作
label的属性List 可以写成value="%{label.list}" 相当于:getLabel().getList();

5:遍历2个list;
Java代码
List<AttrName> attrN {color,size,style}  
List<AttrValue> attrV {red,20,gay} 

List<AttrName> attrN {color,size,style}
List<AttrValue> attrV {red,20,gay}这2个list的元素是一一对应的,一个attrN对应一个attrV
Java代码
<s:iterator value="%{attrN }" id="id"   status="status">   
index     is : <s:property value='status.index'/>   
attrName is : <s:property value='id'/> or <s:property value='%{id}'/>   
attrName is : <s:property value='%{attrV[#status.index]}'/>   
分享到:
评论

相关推荐

    jsp遍历文件夹下的文件的代码.docx

    ### JSP遍历文件夹下的文件的代码解析 #### 一、引言 在Web开发中,有时我们需要在服务器端处理文件系统中的数据,比如列出某个目录下的所有文件或子目录。这种需求可以通过多种方式实现,其中一种常用的技术是...

    jsp VO 循环显示

    例如,如果某个属性值是一个字符串,而你希望将其拆分为多个部分显示,可以使用Java的`split()`方法或者JSTL的`fn:split()`函数。假设你的VO有一个`separatedData`属性,其中包含逗号分隔的数据,你可以这样做: ``...

    页面显示数据库内容(jsp)

    遍历ResultSet,提取每一行的列值,这些值可以用于构建HTML表格或其他显示格式。 5. **JSP标签库**:在JSP中,可以使用JSTL(JavaServer Pages Standard Tag Library)来简化数据库操作。例如,`&lt;sql:query&gt;`标签...

    JSP实用技巧集合,jsp编程的一些小技巧总结

    24. 在JSP中如何调用浏览器中的"另存为"功能? 25. 网页全屏显示 26. 求两个日期相隔了多少天:输入时间格式为(yyyy-mm-dd) 27. 上传文件对话框 28. 分页测试 29. 下载文件 30. 简单汉字判断 31. 将JSP的变量或者bean...

    jsp实现增加、查询和excel数据导入数据库中

    在导入数据到数据库前,我们需要先使用POI读取Excel文件,遍历所有行和列,获取到数据后,再按照数据库字段的映射关系,将这些数据转换成适合插入数据库的格式。 具体流程可能如下: 1. 使用POI API打开Excel文件。...

    jsp 数据操作增删改,以及分页显示

    -- 更多列 --&gt; &lt;!-- 分页导航 --&gt; ${fn:length(books) / pageSize}" /&gt; &lt;!-- ...创建页码链接... --&gt; ``` 综上所述,JSP结合Java和JDBC提供了对数据库的增删改功能,同时通过分页技术优化了大量数据的显示,...

    jsp购物车实验报告

    1. **主界面设计**:`index.jsp`页面使用for循环遍历商品数组,并为每个商品创建超链接,链接指向`shopcart.jsp`。 2. **登录界面与处理**:`Dljm.htm`是登录界面,`Cljm.jsp`负责处理登录请求。当用户名为`admin`...

    JSP应用开发-论坛主题帖显示.pptx

    这可能涉及到使用JSP的EL(Expression Language)或JSTL(JavaServer Pages Standard Tag Library)标签来遍历和显示`request`对象中的主题帖列表。 最后,处理可能出现的编码问题。对于POST提交方式导致的中文乱码...

    jsp表单制作.rar_html_jsp_jsp 制作表单_jsp开发_jsp表单制作

    - `request.getParameterNames()`:列出所有提交的参数名,可用于遍历所有表单数据。 - `session`和`application`对象:可用于存储会话或全局级别的数据,比如用户登录信息。 - JSP脚本元素:`&lt;%= %&gt;`用于输出...

    jsp编程技巧集锦

    在JSP中如何调用浏览器中的"另存为"功能? 25. 网页全屏显示 26. 求两个日期相隔了多少天:输入时间格式为(yyyy-mm-dd) 27. 上传文件对话框 28. 分页测试 29. 下载文件 30. 简单汉字判断 31. 将...

    Jsp.rar_jsp 分页_jsp分页_索引 JavaScript

    主键是数据库表中唯一标识记录的一列或多列,它确保了数据的唯一性和完整性。在分页查询中,主键可以作为排序和定位记录的关键依据,使得查询更高效。例如,可以使用主键值来确定数据的位置,从而快速获取特定页面的...

    JSP查詢数据时候使用分页列出

    - JSP页面从session或response中取出数据,遍历并显示在页面上。 - 同时,创建一个导航栏,显示页码,允许用户跳转到其他页面。这个导航栏需要根据总页数动态生成。 4. **交互逻辑**: - 用户点击页码或“下一页...

    jsp+js实现可排序表格

    -- 更多列 --&gt; List&lt;DataObject&gt; dataList = ...; // 从数据库或其他数据源获取数据 for (DataObject data : dataList) { %&gt; &lt;td&gt;&lt;%= data.getColumn1() %&gt; &lt;td&gt;&lt;%= data.getColumn2() %&gt; &lt;!-- 更多...

    JSP动态合并单元格

    在实际应用中,可能还需要考虑其他因素,比如表头的合并、多列合并等。结合提供的"效果图.png",你可以更好地理解这一实现方式在页面上的视觉效果。 总结起来,JSP动态合并单元格是通过JSTL的C标签库实现的,主要...

    纯JSP实现真分页

    【标签】"分页查询"和"Oracle"表明本示例主要关注如何在JSP中利用Oracle数据库进行分页查询,这涉及到SQL查询优化、JDBC操作和JSP编程等多个技术领域。对于Oracle数据库,了解其特有的分页方法和性能优化策略是至关...

    JSP输出所在目录文件信息

    **标签** "JSP文件 所在目录 文件信息" 指的是我们正在处理的JSP文件,我们关注的是获取JSP页面所在目录并列出其中的文件信息。在压缩包中的`io`文件可能包含了一些用于处理I/O操作的示例代码或工具类,这些可以帮助...

    jsp+mysql留言板

    2. **留言展示**:JDBC查询数据库中的所有留言,将结果集转化为Java对象(如Message类),再使用JSP的EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)标签来遍历并显示这些对象。...

    jsp+javaBean查询数据库

    而Controller部分可能在未显示的Servlet或JSP动作中,负责处理用户请求并调用JavaBean。 总结,`jsp+javaBean查询数据库`涉及的关键点包括JSP与JavaBean的协作、数据库连接与查询、结果集处理、JavaBean的属性与...

    jsp(乘法表,聊天室,读写文件,猜数字游戏,检验用户登录)

    乘法表的实现通常会包含两个嵌套循环,一个用于行数,另一个用于列数,通过遍历所有可能的乘积组合来生成表格。 接下来是聊天室功能。聊天室是一个实时交互的应用,它需要处理用户输入并显示其他用户的聊天消息。在...

    jsp竖排表格

    下面,我们将详细探讨如何在JSP中读取数据库数据并将其显示为竖向布局的表格。 首先,我们需要连接到数据库。在JSP中,我们通常使用Java的JDBC(Java Database Connectivity)API来完成这项任务。以下是一个简单的...

Global site tag (gtag.js) - Google Analytics