本文目录一览:
- 1、jsp中c标签foreach的使用
- 2、jsp中“
- 3、jsp页面怎么让一个标签到达条件时,此元素不被显示
- 4、写了个jsp页面,引入c标签库后,一写就报错,错误是isValid() == false,在线等!
- 5、jsp如何用c标签实现分页
jsp中c标签foreach的使用
FOREACH标签部分.
首先确认MAP中有没有取得数据.
c:forEach [var="varName"] items="" [varStatus="varStatusName"]
FOREACH标签含义: items存放被迭代的集合对象, var用来存放现在指到的成员。
3. var元素输出的参数需要与MAP中存放的参数对应,(通常用一个JAVABEAN对像封装放在LIST等集合对像中).案例中的,NAME等值是否在JAVABEAN中存在.如果存在,EL表达式写法为: ${entry.name}即可直接输入,其他值也是一样.
IF标签部分.
EL表达式有自己的判断方式,无法直接用==,!=,=,=直接判断.
如果要判断封装对像是否为空.请用empty关键字....
以下是IF标签与FOREACH综合用法的示例:
!-- 如果集合中不为空,输出数据! --c:if test="${!empty adminlist}" c:forEach items="${adminlist}" var="list" tr td${list.id}/td td${list.name}/td td${list.pwd}/td /tr /c:forEach /c:if!-- 如果集合中为空,直接在HTML中输出提示! -- c:if test="${empty adminlist}" 未能找到数据! /c:if
为了能更好的显示出FOREACH的效果.通常先用choose标签进行判断,以下是JSP页面中的完整标签片段示例:(IF标签不再举例.)
table cellpadding="5" cellspacing="1" border="0" width="100%" align="center" tr align="center" tdID/td td用户帐号/td td用户密码/td td colspan="2"管理/td /tr c:choose c:when test="${!empty userlist}" c:forEach items="${userlist}" var="list" tr td${list.id}/td td${list.name}/td td${list.pwd}/td td a href="UserEdit.jspx?action=updateid=${list.id}"编缉/a /td td div onClick="return del();" a href="UserEdit.jspx?action=deleteid=${list.id}"删除/a /div /td /tr /c:forEach /c:when c:otherwise tr td colspan="5"未能找到符合条件的数据!/td /tr /c:otherwise /c:choose/table
jsp中“
不是,是JSTL标签库中的标签,在JSP页面中导入后就可以使用,代码如下:
%@ taglib uri="" prefix="c" %,比如c:if/c:if,和普通的if判断语句是一样的功能功能,
c:if test="判断"判断为真,执行的操作/c:if
jsp页面怎么让一个标签到达条件时,此元素不被显示
1、先在JSP页面加入JSTL标签库,俗称c标签。 2、用JSTL的数组里的元素 3、LZ要熟悉EL表达式的话,这个过程应该简单很多。 下面是个小例子: ${tmpS } 这样就可以在JSP页面输出了
写了个jsp页面,引入c标签库后,一写就报错,错误是isValid() == false,在线等!
c:forEach中属性没有加 比如c:forEach var="" items=""这样就不会报错了
jsp如何用c标签实现分页
jsp用c标签实现分页的方式如下:
%@ tag language="java" pageEncoding="UTF-8"%
%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c"%
%@ attribute name="curIndex" type="java.lang.Long" required="true"%
%@ attribute name="pageSize" type="java.lang.Long" required="true"%
%@ attribute name="pagerRange" type="java.lang.Long" required="true"%
%@ attribute name="totalPage" type="java.lang.Long" required="true"%
%@ attribute name="formId" type="java.lang.String" required="true"%
%
long begin = Math.max(1, curIndex - pagerRange/2);
long end = Math.min(begin + (pagerRange-1),totalPage);
request.setAttribute("p_begin", begin);
request.setAttribute("p_end", end);
%
table class="pager"
tr
% if (curIndex!=1){%
tda href="javascript:gotoPage(1)"首页/a/td
tda href="javascript:gotoPage(%=curIndex-1%)"上一页/a/td
%}else{%
td class="disabled"a href="#"首页/a/td
td class="disabled"a href="#"上一页/a/td
%}%
c:forEach var="i" begin="${p_begin}" end="${p_end}"
c:choose
c:when test="${i == curIndex}"
td class="active"a href="#"${i}/a/td
/c:when
c:otherwise
tda href="javascript:gotoPage(${i})"${i}/a/td
/c:otherwise
/c:choose
/c:forEach
% if (curIndex!=totalPage){%
tda href="#"下一页/a/td
tda href="#"末页/a/td
%}else{%
td class="disabled"a href="javascript:gotoPage(%=curIndex+1%)"下一页/a/td
td class="disabled"a href="javascript:gotoPage(%=totalPage%)"末页/a/td
%}%
tda共${totalPage}页/a/td
td class="input_li"跳转到:input type="text" id="p_pageIndex" size="2" value="c:out value="${pageIndex}"/"/页 input type="button" id="gotoBtn" onclick="gotoPageByBtn()" value="GO"//td
td class="input_li"nbsp;每页:
select id="p_pageSizeSelect" onchange="gotoPage(%=curIndex%)"
option value="10" c:if test="${pageSize==10}"selected/c:if10条/option
option value="20" c:if test="${pageSize==20}"selected/c:if20条/option
option value="50" c:if test="${pageSize==50}"selected/c:if50条/option
/select
/td
/tr
/table
控制分页的代码如下
%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c"%
%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt"%
%@ taglib tagdir="/WEB-INF/tags" prefix="tags"%
head
style!--分页样式--
.pager { font: 12px Arial, Helvetica, sans-serif;}
.pager a {padding: 1px 6px; border: solid 1px #ddd; background: #fff; text-decoration: none;margin-right:2px;line-height:30px;vertical-align:middle;}
.pager .active a{color:red;border:none;}
.pager a:visited {padding: 1px 6px; border: solid 1px #ddd; background: #fff; text-decoration: none;}
.pager a:hover {color: #fff; background: #ffa501;border-color:#ffa501;text-decoration: none;}
.pager .input_li{padding: 1px 6px;}
/style
script!--分页跳转脚本--
function gotoPage(pageIndex){
var queryForm = document.getElementById("queryForm");
var action = queryForm.action;
var pageSize = document.getElementById("p_pageSizeSelect").value;
action += "?pageIndex=" + pageIndex + "pageSize=" + pageSize;
//alert(action);
queryForm.action = action;
queryForm.submit();
}
function gotoPageByBtn(){
var pageIndex = document.getElementById("p_pageIndex").value;
var pageIndexInt = parseInt(pageIndex);
var totalPage = ${totalPage};
if(pageIndexInt0 pageIndexInttotalPage){
gotoPage(pageIndex);
}
else{
alert("输入页数超出范围!");
}
}
/script
/head
body
form id="queryForm" action="${basePath}/log/list" method="post"
table
tr
td用户名:/td
tdinput type="text" name="userName" value="c:out value="${userName}"/"/nbsp;/td
tdinput type="submit" text="查询"//td
/tr
/table
/form
tags:pager pagerRange="10" pageSize="${pageSize}" totalPage="${totalPage}" curIndex="${pageIndex}" formId="queryForm"/tags:pager
table class="border"
thead
tr
th width="100"用户名称/th
th width="500"操作内容/th
th width="200"操作时间/th
/tr
/thead
tbody
c:forEach items="${logList}" var="log"
tr
td${log.userName}/td
td${log.result}/td
td
fmt:formatDate value="${log.createTime}" pattern="yyyy-MM-dd HH:mm:ss"/
/td
/tr
/c:forEach
/tbody
/table
tags:pager pagerRange="10" pageSize="${pageSize}" totalPage="${totalPage}" curIndex="${pageIndex}" formId="queryForm"/tags:pager
/body