comanndButton鍜宑ommandLink:
h:commandButton
鍙互鎻愪氦琛ㄥ崟錛屼絾涓嶈兘浼犻掑弬鏁?nbsp;
h:commandLink
鍙互鎻愪氦琛ㄥ崟錛屽張鑳戒紶閫掑弬鏁幫紝浣嗘槸浠ラ摼鎺ョ殑褰㈠紡灞曠幇
commandLink蹇呴』瑕佸湪涓涓猣rom涓?nbsp;
comanndButton鍜宑ommandLink瑕佸湪涓涓猣rom涓墠鑳芥彁浜よ〃鍗曞唴瀹廣?nbsp;
浼氬彂閫佸洖鏈〉闈紝騫惰Е鍙慗SF鐨勭敓鍛藉懆鏈燂紝姣斿錛氶噸寤虹粍浠舵爲銆佸簲鐢ㄨ姹傚肩瓑錛屽洜姝わ紝鍏佽璁劇疆actionListener鍜宎ction灞炴э紝榪欐牱浠栦滑鍙互寰堣交鏉懼畬鎴愬己澶х殑鍔熻兘銆?nbsp;
actionListener 鍝嶅簲鐨勪竴涓簨浠?褰撶劧榪欎釜鍜宩s涓殑浜嬩歡涓嶄竴鏍?actionListener="#{actionListener.check}"鍝嶅簲鐨勬槸鏈嶅姟鍣ㄧ鐨勪簨浠禷ctionListener綾葷殑check鏂規硶.
action 鐢ㄨ繃STRUTS鐨勯兘鐭ラ亾,鎻愪氦鍚庢墽琛岀殑鏂規硶.褰撶劧鍦⊿RTUTS涓璦ction="URL"錛岃岃繖閲屾槸涓涓猽ser綾葷殑check鏂規硶.
涓嶈凍鍦ㄤ簬錛氬鏋滈噸寤虹粍浠舵爲鐨勬垚鏈瘮杈冮珮錛堟瘮濡傦細褰撳墠欏甸潰鏄劇ず涓涓暟鎹〃鏍鹼級錛岃岃繖浜涚粍浠跺浜庡嵆灝嗚煩杞埌鐨勯〉闈㈡病浠涔堢敤鏃訛紝灝卞簲璇ヨ冭檻浣跨敤outputLink浜嗐?nbsp;
鍙﹀錛氬鏋滈渶瑕佷紶閫掑弬鏁?lt;f:param.../>錛屼嬌鐢╟ommandLink
鍦╝ction鎴朼ctionListener涓幏鍙?lt;f:param.../>錛?/p>
outputLink
姣旇搗鍓嶄袱涓潵璇達紝浠栫浉褰撶殑杞婚噺綰т簡銆備粬浼氱洿鎺ヤ駭鐢熶竴涓?lt;a href=""></a>閾炬帴錛岃煩杞埌鐩稿簲鐨勯〉闈紝鍥犳娌℃湁榪涘叆JSF鐢熷懡鍛ㄦ湡鐨勯澶栧紑閿錛岃窡鎴戜滑鐩存帴鍐欎竴涓猦tml鐨勯摼鎺ユ病浠涔堝尯鍒?nbsp;
濡傛灉闇瑕佷紶閫掑弬鏁幫紝宓屽叆<f:param name="a" value="b"/>灝卞彲浠ヤ簡錛屽綋鐒惰繖閲岀殑value鍙互鐢ㄨ〃杈懼紡鏉ヨ〃紺猴紝姣斿value="#{param.productId}"錛岀敤璧鋒潵鏄浉褰撴柟渚跨殑銆?/p>
鍏舵晥鏋滀負<a href="..jsf?productId=..."></a>
h:commandButton銆乭:commandLink 鍜宧:outputLink鐨勫樊鍒湪浜庯細h:outputLink娌℃湁榪涘叆JSF鐨勭敓鍛藉懆鏈?鑰宧:commandLink鍜宧:commandButton閮借榪涘叆JSF鐨勭敓鍛藉懆鏈?
Java浠g爜
銆銆Java鍚庡彴錛?/p>
銆銆public class PageEntity {
銆銆private int page;//褰撳墠欏電爜
銆銆private int total;//涓鍏卞灝戞潯
銆銆private int totalPage;//涓鍏卞灝戦〉
銆銆private int firstResult;//褰撳墠棣栬褰?/p>
銆銆private int lastResult;//褰撳墠灝捐褰?/p>
銆銆private int pageSize = 10; //姣忛〉鍑犳潯鏁版嵁
銆銆public int getPage() {
銆銆return page;
銆銆}
銆銆public void setPage(int page) {
銆銆this.page = page;
銆銆}
銆銆public int getTotal() {
銆銆return total;
銆銆}
銆銆public void setTotal(int total) {
銆銆this.total = total;
銆銆}
銆銆public int getTotalPage() {
銆銆return totalPage;
銆銆}
銆銆public void setTotalPage(int totalPage) {
銆銆this.totalPage = totalPage;
銆銆}
銆銆public int getFirstResult() {
銆銆return firstResult;
銆銆}
銆銆public void setFirstResult(int firstResult) {
銆銆this.firstResult = firstResult;
銆銆}
銆銆public int getLastResult() {
銆銆return lastResult;
銆銆}
銆銆public void setLastResult(int lastResult) {
銆銆this.lastResult = lastResult;
銆銆}
銆銆public int getPageSize() {
銆銆return pageSize;
銆銆}
銆銆public void setPageSize(int pageSize) {
銆銆this.pageSize = pageSize;
銆銆}
銆銆}
銆銆//榪欓噷娉ㄦ剰page蹇呴』鍦╢irstResult涔嬪墠璁$畻
銆銆public PageEntity getPageEntity(HttpServletRequest request,GenericIface entityDao,String where) {
銆銆String strPage = request.getParameter("page") == null ? "1":request.getParameter("page");
銆銆int page = Integer.parseInt(strPage);//瑕佹煡璇㈢殑欏墊暟
銆銆int total = entityDao.findNumber(where);//褰撳墠鏁版嵁搴撴昏褰曟暟
銆銆int pageSize = 20;//姣忛〉瑕佹樉紺虹殑璁板綍
銆銆int firstResult = 0;//璧峰璁板綍
銆銆int lastResult = 0;//鏈熬璁板綍
銆銆int totalPage = 0;
銆銆if(total > 0){
銆銆totalPage = (total + pageSize -1)/pageSize;
銆銆if(page == -1){
銆銆page = totalPage;
銆銆}else if(page < 1){
銆銆page = 1;
銆銆}else if(page > totalPage){
銆銆page = totalPage;
銆銆}
銆銆firstResult = (page-1)*pageSize;
銆銆lastResult = firstResult + pageSize;
銆銆}else{
銆銆//濡傛灉娌℃湁璁板綍 鍒欐竻闆?nbsp; 鍥犱負欏甸潰鏈夊姞1澶勭悊 鎵浠irstResult=-1
銆銆page = 0;
銆銆firstResult = -1;
銆銆lastResult = 0;
銆銆}
銆銆PageEntity pageEntity = new PageEntity();
銆銆pageEntity.setFirstResult(firstResult);
銆銆pageEntity.setLastResult(lastResult);
銆銆pageEntity.setPage(page);
銆銆pageEntity.setTotal(total);
銆銆pageEntity.setTotalPage(totalPage);
銆銆pageEntity.setPageSize(pageSize);
銆銆return pageEntity;
銆銆}
銆銆鍓嶅彴js錛?/p>
銆銆//鍒嗛〉紼嬪簭 1琛ㄧず絎竴欏?2琛ㄧず涓婁竴欏?3琛ㄧず涓嬩竴欏?4琛ㄧず灝鵑〉
銆銆function changePage(e){
銆銆var page = document.getElementById("nowPage") == null ? "1":document.getElementById("nowPage").value;
銆銆switch(e){
銆銆case 1:page=1;break;
銆銆case 2:page--;break;
銆銆case 3:page++;break;
銆銆case 4:page=-1;break;
銆銆}
銆銆var url = "action.do?page=" + page + getCondition(page);
銆銆document.location.href = url;
銆銆}
銆銆function forwardPage(){
銆銆var page = document.getElementById("nowPage") == null ? "1":document.getElementById("nowPage").value;
銆銆var exp = /^(0|[1-9]\d*)$/;
銆銆var result = page.match(exp);
銆銆if(result != null){
銆銆var url = " action.do?page=" + page + getCondition(page);
銆銆document.location.href = url;
銆銆}else{
銆銆alert("璇瘋緭鍏ュ悎娉曟暟瀛?");
銆銆}
銆銆}
銆銆Jsp欏甸潰:
銆銆<div id="page" class="w_872 mrg_s10">
銆銆<label><input name="" type="button" class="tnleft1" onClick="changePage(1)" title="棣栭〉" /></label>
銆銆<label><input name="" type="button" class="tnleft2" onClick="changePage(2)" title="涓婁竴欏? /></label>
銆銆<label class="fo">欏電爜 <input type="text" class="input5" id="nowPage" value="${pageEntity.page }" onblur="forwardPage()"> of <span>${pageEntity.totalPage }</span></label>
銆銆<label><input name="" type="button" class="tnrig2" onClick="changePage(3)" title="涓嬩竴欏? /></label>
銆銆<label><input name="" type="button" class="tnrig1" onClick="changePage(4)" title="灝鵑〉" /></label>
銆銆<label class="rig"><span>${pageEntity.firstResult+1 }</span> to <span>${pageEntity.lastResult }</span>錛屽叡<span>${pageEntity.total }</span>鏉?lt;/label>
銆銆</div>
銆銆欏甸潰鏁堟灉灞曠ず:
鏂囩珷鍑哄 錛?a >http://java.chinaitlab.com/ServletJsp/816055.html