控制jsp頁面某一部分內容循環執行


1.開發標籤處理器類


package com.jstl.simple.tag;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.IterationTag;
import javax.servlet.jsp.tagext.Tag;
import javax.servlet.jsp.tagext.TagSupport;

public class ViewLoopContent extends TagSupport {

	//定義一個全局變量,用來控制執行的次數
	int a = 5;
	
	@Override
	public int doStartTag() throws JspException {
		// 執行標籤體的內容
		return Tag.EVAL_BODY_INCLUDE;
	}
	
	//通過doAfterBody()這個方法來控制循環次數,使用IterationTag.EVAL_BODY_AGAIN;來進行控制
	@Override
	public int doAfterBody() throws JspException {
		//
		a--;
		if(a>0){
			return IterationTag.EVAL_BODY_AGAIN;
		}else{
			return IterationTag.SKIP_BODY;
		}
	}
}


2.在tld文件中描述


<tag>
      <description>控制body循環執行</description>
      <name>viewLoopBody</name>
      <tag-class>com.jstl.simple.tag.ViewLoopContent</tag-class>
      <body-content>JSP</body-content>
</tag>

3.在jsp中使用這些標籤


 <%@ taglib uri="http://www.jstl.simple.tag" prefix="jstl" %>

   <body>
       <jstl:viewLoopBody>
         This is my JSP page. <br>
         </jstl:viewLoopBody>
  </body>



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章