Posted on 2006-11-01 13:23
Computerboy 閱讀(2670)
評(píng)論(1) 編輯 收藏 所屬分類(lèi):
編程技術(shù)
DWR 下的腳本分頁(yè)
好久沒(méi)有上來(lái)寫(xiě)東西,最近在寫(xiě)關(guān)于DWR的項(xiàng)目,出現(xiàn)了一點(diǎn)問(wèn)題,就是腳本分頁(yè),在網(wǎng)上找了許久,都沒(méi)有找到
所以還是動(dòng)手寫(xiě)一個(gè)吧
呵呵!懶人沒(méi)有辦法 ^_^ !
首先是HTML,靜態(tài)頁(yè),我在這就隨便寫(xiě)一個(gè)吧。就是為了實(shí)現(xiàn)功能而已!這個(gè)頁(yè)面是為了實(shí)現(xiàn)從數(shù)據(jù)庫(kù)讀出來(lái)
用戶(hù)的相關(guān)信息,然后實(shí)現(xiàn)修改!
----------stone HTML start? -----------
<html>
<head>
? <script type="text/javascript" language="javascript" src="../dwr/interface/UserService.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/CorpService.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/CopyrightService.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/SearchEngine.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/engine.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/util.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/BackstageService.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/Backstage.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/UserDbManager.js"></script>
? <script type="text/javascript" language="javascript" src="../dwr/interface/User.js"></script>
? <script type="text/javascript" language="javascript" src="report.js"></script>
</head>
<body onload="init()">
<table width="100%" border="0" cellspacing="2">
? <tr>
??? <td valign="top">
????? <div style="width:100%"; margin-top:-5px;">
????? <table width="100%" align="center" cellpadding="0"? cellspacing="0" border="0" bgcolor="#C3D9FF" style="margin-bottom:5px;">
?????? <tr>
???????? <td>
????????? <div style="width:100%">
????????? <table>
??????????? <tr>
???????????? <td>
????????????? <div id="content-div" style="height:260px;"><b style="font-weight:bold;color:green;">此處為用戶(hù)操作</b><br/>
?????????????? <table? border="1" class="rowed">
?????????????? <thead>
??????????????? <tr>
?????????????????? <th>用戶(hù)名稱(chēng)</th>
?????????????????? <th>用戶(hù)郵箱</th>
?????????????????? <th>手機(jī)</th>
?????????????????? <th colspan="2">操作</th>
??????????????? </tr>
?????????????? </thead>
?????????????? <tbody id="peoplebody">
?????????????? </tbody>
?????????????? </table>
????????????? </div>
??????????? </table>
??????????? </div>
????????? </table>
???????? </div>
??????? </table>
<div id="--copyright" class="copyright"></div>
?????????? <div id="edit-user-div"? style="position:absolute; width:260px; border:solid 1px red; background-color:tomato; display:none;">
?????????? <div id="edit-user-div-content" style="width:100%;"></div>
????????? <hr/>
?????????? <button onclick="editUser()">修改</button>
??????????? <button onclick="$('edit-user-div').style.display='none';">取消</button>
????????? </div>
? ?
</body>
</html>???????? ?
?????? ?
--------------stone? HTML end? ---------------------------------------
那么就開(kāi)始真正的腳本實(shí)現(xiàn)了。由于DWR是靜態(tài)和腳本聯(lián)合的東西。那么我們?cè)谀_本要實(shí)現(xiàn)一個(gè)動(dòng)態(tài)的LIST查詢(xún)
--------------stone Script start-----------------------------
function init() {
? username = false;
? email = false;
? cellphone = false;
? if ($('--copyright') != null) {
??? CopyrightService.get(function(data) {
????? $('--copyright').innerHTML = data;
??? });
? }
? BackstageService.getAllUsers(function(userList) {
??? _corps=userList;
??? _pageData=userList;
??? var ttt='';
??? var count=0;
??? _page=1;
??? var s = '';
??? for (var user in userList) {
?????? count++;
????? if(count>10){
??????? continue;
????? }
????? var u = userList[user];
????? s += '<tr><td>' + u.username + '</td>';
????? s += '<td>' + u.email + '</td>';
????? s += '<td>' + u.cellphone + '</td>';
????? s += '<td> <input type="button"value="修改" onclick="showEditDiv(\'' + u.username + '\',\'' + u.email + '\',\'' + u.cellphone + '\');"/> '
????????????? + '</td>';
????? s += '<td>? <input type="button"value="刪除" onclick="delUser(\'' + u.username + '\');"/>'
????????????? + '</td>';
??? }
??? _pageCount=count;
??? if(count==0){
????? ttt='沒(méi)有找到記錄';
??? }
??? else{
????? var tmp='<div style="width:99%;font-size:9pt;text-align:right;">';
????? if(count>10){
??????? tmp +='第<b style="color:green;">1</b>頁(yè) 共<b>'+(Math.ceil(_pageCount/10))+'</b>頁(yè)';
??????? tmp +=' ';
??????? tmp +='<a href="#" style="color:black;" onClick="showPage(2)">下頁(yè)</a>';
??????? tmp +=' ';
??????? tmp +='<a href="#" style="color:black;" onClick="showPage('+(Math.ceil(_pageCount/10))+')">末頁(yè)</a>';
????? }
??????? tmp +='</div>';
??????? tmp +='<div style="width:99%; font-size:10pt; text-align:right;"><br/>共<b style="color:green;">'+count+'</b>條記錄';
??????? tmp +='</div>';
??????? ttt +=tmp;
??? }
??? var tb = $('peoplebody');
??? tb.innerHTML = s;
??? $('content-div').innerHTML=ttt;
? });
}
------------------下面是分頁(yè)顯示的腳本--------------------
function showPage(page){
? $('content-div').innerHTML='<span style="color:gray;font-size:9pt;">載入中...</span>';
? _page=page;
? var ttt='';
? var count=0;
? var total=Math.ceil(_pageCount/10);
? for(var no in _pageData){
??? count++;
??? if(count>10*page||count<=(page-1)*10){
????? continue;
??? }
? }
? var tmp ='<div style="width:99%; font-size:9pt; text-align:right;">';
? if(page>1){
??? tmp +='<a href="#" style="color:black;" onClick="showPage(1)">首頁(yè)</a>';
??? tmp +=' ';
??? tmp +='<a href="#" style="color:black;" onClick="showPage('+(page-1)+')">上頁(yè)</a>';
??? tmp +=' ';
? }
??? tmp +='第<b style="color:green;">'+_page+'</b>頁(yè) 共<b>'+total+'</b>頁(yè)';
??? if(page<total){
????? tmp +=' ';
????? tmp +='<a href="#" style="color:black;" onClick="showPage('+(page+1)+')">下頁(yè)</a>';
????? tmp +=' ';
????? tmp +='<a href="#" style="color:black;" onClick="showPage('+total+')">末頁(yè)</a>';
??? }
????? tmp +='</div>';
????? tmp +='<div style="width:99%;font-size:10pt;text-align:right;"><br/>共<b style="color:green;">'+count+'</b>條記錄';
????? tmp +='</div>';
????? ttt +=tmp;
???? $('content-div').innerHTML=ttt;
}
由于我的實(shí)現(xiàn)是一個(gè)腳本的分頁(yè),所以并沒(méi)有在后臺(tái)或者JAVA上實(shí)現(xiàn)。這個(gè)是存腳本實(shí)現(xiàn)的DWR分頁(yè)
技術(shù)有限,希望大家給予指點(diǎn)!
By:stone
-----------------------------stone? end? -------------