本文目錄一覽:
- 1、C標籤是什麼,為什麼要使用C標籤,有哪些常見的指令
- 2、jsp頁面中c標籤的問題
- 3、關於jsp的和的用法
- 4、jsp如何用c標籤實現分頁
- 5、jsp中c標籤foreach的使用
- 6、jsp標籤是怎以用的?
C標籤是什麼,為什麼要使用C標籤,有哪些常見的指令
C標籤是:核心標籤,最常用的JSTL標籤。
引用核心標籤庫的語法如下:
%@ taglib prefix=”c”
uri=”” %
常見的指令:
jsp頁面中c標籤的問題
按你的頁面編寫邏輯,是不是應該這樣
input type=”text” name=”num” value=”${coupon.num}”
c:if test=”${coupon.state !=0}” style=”display:none;”/c:if
/
關於jsp的和的用法
c:forEach items=”${userVOs}” var=”userVO” varStatus=”status”
c:if test=”${status.index%2 == 0}”
tr
td${status.index }/td
td${userVO.name }/td
td${userVO.password }/td
/tr
/c:if
/c:forEach
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
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標籤是怎以用的?
c:if標籤的兩種形式如下:
1.無體:
c:if test=”testCondition” [var=”varName”] [scope=”page|request|session|application”] /
2.有體:
c:if test=”testCondition” [var=”varName”] [scope=”page|request|session|application”] /
Content
/c:if
test中執行判斷,結果為true時執行Content中的內容,var保存test中的布爾值,scope設置屬性範圍
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/247332.html