| Tag | Attribute | Usage |
|---|---|---|
| c:out | value | String ของค่าที่ต้องการจะแสดงผล |
| escapeXml | ไม่ render XML หรือ HTML แ่ต่จะแสดงผลเหมือนกับ String ปกติ default: true | |
| default | ค่า default เมื่อ value เป็น null ซึ่งสามารถใช้ได้เช่นเดียวกับ <c:out value="some string">default value</c:out> | |
| c:forEach | var | ชื่อของตัวแปรที่ไว้รับ element ในแต่ละ loop |
| items | ชื่อของตัวแปรตัวแปร array, Collection, Map หรือ comma-delimited String ซึ่งเก็บแต่ละ element สำหรับการวนลูป | |
| varStatue | ชื่อของตัวแปร javax.servlet.jsp.jstl.core.LoopTagStatus ซึ่งสามารถนำมาหาค่าต่างๆ เช่น count ต่อไป เช่น<c:forEach var="movie" items="${movieList}"
varStatus="movieLoopCount">
<tr><td>Count: ${movieLoopCount.count} </td></tr>
</c:forEach>
| |
| c:forTokens | var | ชื่อของตัวแปรที่ไว้รับ element ในแต่ละ loop |
| items | ชื่อของตัวแปรตัวแปร array, Collection, Map หรือ comma-delimited String ซึ่งเก็บแต่ละ element สำหรับการวนลูป | |
| varStatue | ชื่อของตัวแปร javax.servlet.jsp.jstl.core.LoopTagStatus ซึ่งสามารถใช้ได้เช่นเดียวกับ varStatus ของ c:forEach | |
| delims | String ที่เป็นตัวคั่นในการแบ่งแต่ละ token เช่น <c:forTokens items="${dataString}" delims="," var="item"> Next item - ${item} </c:forTokens> | |
| begin | ตัวแรกที่จะเริ่มใช้ใน loop | |
| end | ตัวสุดท้ายที่จะใช้ใน loop | |
| step | ตัวถัดที่จะใช้ใน loop | |
| c:if | test | ค่าที่เป็น boolean เพื่อใช้ทดสอบว่าจะทำคำสั่งใน c:if หรือไม่ |
| c:choose | ตัวนี้ไม่มี attribute จะใช้ ร่วมกับ c:when และ c:otherwise<c:choose>
<c:when test="${userPref == 'performance'}">
...do something...
</c:when>
<c:when test="${userPref == 'safety'}">
...do something...
</c:when>
<c:otherwise>
...do something...
</c:otherwise>
</c:choose>
| |
| c:when | test | เหมือนกับ attribute test ของ c:if คือใช้ทดสอบเงื่อนไขในการทำงาน |
| c:otherwise | ตัวนี้ไม่มี attribute ใช้ร่วมกับ c:when ดังนี้ | |
| c:set | var | ตัวแปรที่ต้องการ set ค่า ในกรณีที่ไม่มีตัวแปรชื่อนี้ ตัวแปรนี้ก็จะถูกสร้างขึ้นมา |
| scope | scope ของตัวแปร
| |
| value | ค่าที่ต้องการจะ set หรือสามารถใส่ค่านี้เป็น body ของ tag ก็ได้ เช่น | |
| c:set | target | bean หรือ Map ที่ต้องการจะ set ค่า |
| property | ชื่อ property ที่ต้องการจะ set ค่า | |
| value | ค่าที่ต้องการจะ set หรือสามารถใส่ค่านี้เป็น body ของ tag ก็ได้ เช่น <c:set target="${person}" property="name">new name</c:set> | |
| c:remove | var | ตัวแปรที่ต้องการลบออก |
| scope | scope ของตัวแปรที่ต้องการจะลบ
| |
| c:import | url | c:import จะใช้ได้เหมือน jsp:include แต่ว่าสามารถอ้างถึงไฟล์ได้ทั้งใน application และนอก web application โดยระบุ URL ของไฟล์ที่ต้องการจะใส่เข้ามา |
| c:param | name | c:param ใช้ในการส่งตัวแปรข้ามไปยัง included page เหมือนกับ jsp:param โดยระบุชื่อของตัวแปรที่ต้องการจะส่งไป |
| value | ค่าของตัวแปรที่จะส่งไป ใช้ร่วมกับ c:import หรือ c:url ซึ่งค่าของตัวแปรก็จะ encodeUrl แล้ว และสามารถส่งได้อย่างถูกต้อง ตัวอย่างเช่น<c:import url="Header.jsp"> <c:param name="subTitle" value="any sub-title for this page" /> <c:import> | |
| c:url | value | path และ file ที่ต้องการจะ link ไป โดย c:url จะจัดการเรื่อง session ให้อัตโนมัติ เช่นในกรณีที่ client ไม่รับ cookies มันจะใส่ session id ต่อท้าย url ให้อัตโนมัติ แต่มันจะไม่ได้ทำ encodeUrl ให้ดังนั้นถ้าใน URL มีค่าตัวแปรที่เป็นอักขระพิเศษสำหรับ HTML เช่น space ก็จะทำให้ error ได้ |
| c:redirect | url | url ที่จะ redirect ไป ซึ่งจะมีการ rewrite URL เพื่อจัดการ session ให้อัตโนมัติ |
| c:catch | var | สำหรับใส่ code ที่เสี่ยงจะ throw exception ถ้ามี exception เกิดขึ้น มันจะข้าม block ของ c:catch ไปทำคำสั่งต่อจากนั้นเลย และ property var เป็นชื่อของตัวแปร exception ซึ่งจะใช้หลังจาก c:catch ได้ เช่น<c:catch var="ex">
<% int x = 1/0 %>
</c:catch>
If error occurs with ${ex}
|
Reference:
JSTL Reference Documentation
Setup Jstl for Jsp2
No comments:
Post a Comment