jstl <x:if>標籤

2019-10-16 22:12:37

<x:if>標記評估測試XPath表示式,如果為true,則處理其正文內容。 如果測試條件為false,則主體內容被忽略。

屬性

<x:if>標籤具有以下屬性 -

屬性 描述 必需 預設
select 要評估的XPath表示式
var 用於儲存條件結果的變數的名稱
scope var屬性中指定的變數的範圍 page

範例

以下範例將顯示如何使用<x:if>標籤,編寫一個JSP檔案:xml_if.jsp 如下所示:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jstl xml:if標籤範例</title>
</head>
<body>
    <div style="margin: auto; width: 90%">
        <h3>圖書資訊:</h3>

        <c:set var="xmltext">
        <books>  
            <book>  
              <name>Three mistakes of my life</name>  
              <author>Chen Bhagat</author>  
              <price>20</price>  
            </book>  
            <book>  
              <name>Tomorrow land</name>  
              <author>Little Bird</author>  
              <price>190</price>  
            </book>  
            </books> 
        </c:set>

        <x:parse xml = "${xmltext}" var = "output"/>
       <x:if select = "$output//book">
         Document has at least one <book> element.
       </x:if>
       <br />

       <x:if select = "$output/books/book[2]/price > 100">
         Book prices are very high
       </x:if>
    </div>
</body>
</html>

執行上述專案程式碼,得到以下結果如下 -