The <x:if> tag evaluates a test XPath expression and if it is true, it processes its body. If the test condition is false, the body is ignored.
Attribute
The <x:if> tag has the following attributes −
Attribute | Description | Required | Default |
---|---|---|---|
select | The XPath expression to be evaluated | Yes | None |
var | Name of the variable to store the condition's result | No | None |
scope | Scope of the variable specified in the var attribute | No | Page |
Example
Following is an example that show the use of the <x:if> tag −
<%@ taglib prefix = "c" uri = "https://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix = "x" uri = "https://java.sun.com/jsp/jstl/xml" %> <html> <head> <title>JSTL x:if Tags</title> </head> <body> <h3>Books Info:</h3> <c:set var = "xmltext"> <books> <book> <name>Padam History</name> <author>ZARA</author> <price>100</price> </book> <book> <name>Great Mistry</name> <author>NUHA</author> <price>2000</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[1]/book/price > 100"> Book prices are very high </x:if> </body> </html>
Let us now access the above JSP, the following result will be displayed −
Books Info: Document has at least one <book> element. Book prices are very high