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

使用JSTL标签来访问list并判断list中的选中项

    博客分类:
  • Java
 
阅读更多

From:http://www.abc188.com/info/html/chengxusheji/Javajishu/20080225/46194.html

本文将向大家讲述如何通过sun公司的jstl标签来访问list对象,并在JSP页面进行显示

一般而言,list对象会存储在request对象,session对象中,一般采用框架(比如说Struts框架中的Action)完成把list对象置入request对象中,

XXAction{

public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {

/*从session中获得用户信息*/

HttpSession session=request.getSession();
User user =(User)session.getAttribute("user");
request.setAttribute("user",user);

/*建立rolelist*/

List rolelist =new ArrayList();
for(int i=0;i<5;i ){
Role role= new Role(i,"role" i);
rolelist.add(role);
}

request.setAttribute("role_list",rolelist);

}

本文的讲解重点是jstl标签部分:

<%@ taglib uri="/jstl/core" prefix="c"%>

<c:set var="user" value="${user}" />

<tr bgcolor="#FFFFFF">
<td align="center" valign="top">

<!--

因为涉及到中文字符问题,所以通过使用struts标签来读者资源文件中的adduser.role项,对应的中文编码为:角色-->

<bean:message key="adduser.role" /></td>
<td>
<select name="role">
<c:forEach var="ro" items="${role_list}"><!--访问request中的role_list对象-->
<c:choose>
<c:when test="${user.role==ro.role_name}"><!--判断,相当于if(user.getrole().equlas(rolgetrolename()))假如user中的role和list中的role相同就在select中选中(高亮)-->

<option selected="selected"
value="<c:out value="${ro.role_id}"/>"><!--设定value项,这样保证页面中看到的是name,当选中

以后,传到接受端实际为id-->
<c:out value="${ro.role_name}"/><!--看到的是role_name-->
</option>
</c:when>
<c:otherwise><!--相当于else-->
<option value="<c:out value="${ro.role_id}"/>"><!--原理同上-->
<c:out
value="${ro.role_name}"></c:out></option>
</c:otherwise>
</c:choose>
</c:forEach><!--循环end-->

</select></td>
</tr>

分享到:
评论

相关推荐

    EL,jstl,js 对select元素

    例如,你可以使用EL从JavaBean的集合属性中获取值并将其转化为`&lt;option&gt;`标签: ```jsp ${bean.optionsList}" var="option"&gt; ${option.value}"&gt;${option.label} ``` 这里的`${bean.optionsList}`引用了...

    CheckBox 选中效果 选中子的父自动选中,选中父的子全部选中

    2. **JSTL标签库的应用**:页面使用了JSTL(JavaServer Pages Standard Tag Library)中的`&lt;c:forEach&gt;`标签来遍历后台传来的列表数据。这里`${list}`表示从前端传入的数据集合,通常为List类型。 3. **CheckBox...

    checkedbox 选中效果 选中子,主自动选中,选中主 子全部选中

    本文档概述了如何利用 JSP、JavaScript 和 JSTL 来实现一种特殊的 checkbox 选中效果:当子项被选中时,其父项也会被自动选中;反之亦然。这种方法广泛应用于权限管理等场景,可以帮助用户更方便地管理和分配权限。

    开发中常用jsp配置文件

    2. **JSTL (JavaServer Pages Standard Tag Library)** 的使用:`&lt;c:forEach&gt;`、`&lt;c:set&gt;` 和 `&lt;c:if&gt;` 是JSTL标签库中的标签。这些标签简化了常见的编程任务,如循环、条件判断等,使得JSP页面更加简洁易读。 - `...

    一个表格的15个需求的代码

    - 可以使用JSP中的JSTL `c:forEach` 标签遍历Java集合,如List、Map等,将数据绑定到表格中。 3. **排序**: - 使用JavaScript库,如jQuery DataTables,可以实现表格数据的排序功能。在JSP中,可能需要与后端...

    ssh整合的分页、批量删除

    3. **JSP展示**:在页面上,通过EL表达式或JSTL标签显示分页信息,并提供链接或按钮让用户切换页码。同时,需要在表单中隐藏当前页码字段,以便提交请求时携带分页参数。 二、SSH整合中的批量删除 批量删除功能...

    java jsp ajax 部门人员选择控件

    在JSP中,我们通常使用JSTL(JavaServer Pages Standard Tag Library)或EL(Expression Language)来简化页面逻辑,但此示例中更可能使用jQuery,因为标签中提到了它。 Ajax是Asynchronous JavaScript and XML的...

    动态树 Struts2.0

    你可以使用这些标签来创建可展开/折叠的节点,并显示其子节点。 3. **数据传递**: 为了实现树的动态加载,即按需加载子节点,通常需要在Action中添加处理请求的方法,接收来自客户端的请求参数,如当前选中的节点ID...

    复选框和Struts2后台交互代码详解

    在修改界面的JSP中,我们使用了JSTL的`&lt;c:forEach&gt;`标签遍历`list`,生成相应的复选框供用户修改选择。每个复选框的value值对应列表中的元素,通过这种方式,用户可以在修改界面看到他们之前的选择,并根据需要进行...

    【JavaScript源代码】ajax jquery实现页面某一个div的刷新效果.docx

    `&lt;c:forEach&gt;`标签是JSTL(JavaServer Pages Standard Tag Library)的一部分,用于遍历集合并输出结果。在这个例子中,它遍历了一个名为`list`的集合,并生成了对应的`option`元素。 7. **事件监听**:`onchange=...

    Spring MVC3构建Web应用详解

    在这个教程中,我们将探讨如何使用Spring MVC 3来创建一个简单的Web应用。首先,我们需要建立一个新的Web项目。 1. 创建Web项目: 在Eclipse或MyEclipse环境中,通过File &gt; New &gt; Web Project来创建一个新的项目,...

    java web 资料

    - **DOM操作**:通过`document.myform`访问表单元素,使用`value`属性获取选中或输入的值,以及`checked`属性检查是否被选中。 - **窗口操作**:`window.open`是JavaScript中用于打开新窗口的函数,可以指定窗口的...

    JSP通用高大上分页代码(超管用)

    5. 分页页面的渲染:在JSP页面中使用EL表达式显示当前页码和总页数,使用循环遍历页码列表,为每个页码生成超链接,并通过条件判断当前页码是否被选中,以不同的样式显示当前页码。 在实现分页功能时,需要特别注意...

Global site tag (gtag.js) - Google Analytics