2013-03-28 136 views
4

我已經使用邁克布林德的指南設置分頁,這是一種享受。我還使用引導程序在頁面底部創建更好看的頁面導航。你可以讓我知道我需要做什麼,以便NEXT和PREV按鈕有效嗎?我想這是像i + 1和i-1,但我還沒弄明白。這裏是我的代碼:分頁 - Webmatrix /剃鬚刀

編輯的代碼:

//Paging 

var pageSize = 6; 
var totalPages = 0; 
var count = 0; 
var page = UrlData[0].IsInt() ? UrlData[0].AsInt() : 1; 
var offset = (page -1) * pageSize; 

var db = Database.Open("StayInFlorida"); 
var sql = "Select Count(*) From PropertyInfo "; 
count = (int)db.QueryValue(sql); 
totalPages = count/pageSize;   
if(count % pageSize > 0){ 
    totalPages += 1; 
} 
sql = "SELECT PropertyName, PropertyID, ResortName, NumBedrooms, NumBathrooms, NumSleeps, BriefDescription, PrimaryImage FROM PropertyInfo "+ 
      "Order By PropertyID OFFSET @0 ROWS FETCH NEXT @1 ROWS ONLY;"; 

var result = db.Query(sql, offset, pageSize); 

<!--Pagination Start--> 
<div class="pagination pagination-centered"> 
<ul> 
@{ 
    if(page > 1){  
    <li><a href="/portfolio1/@(page-1)">Prev</a></li> 
    } 
    for (var i = 1; i < totalPages + 1; i++){ 
    <li><a href="/portfolio1/@i">@i</a></li> 
    } 
    if(page > 1){ 
    <li><a href="/portfolio1/@(page + 1)">Next</a></li> 
    } 
} 
</ul> 
</div> 
<br> 
<!--Pagination Finish--> 

回答

3

想必你只想要一個一個或下一個按鈕,顯示如果有一個或下一個頁面去?如果是這樣,假設您正在跟蹤當前頁碼的一個變量稱爲頁面,這是你如何能做到這一點:

<!--Pagination Start--> 
<div class="pagination pagination-large"> 
<ul> 
    @if(page > 1){ 
     <li><a href="/portfolio1/@(page-1)">Prev</a></li> 
    } 
    for (var i = 1; i < totalPages + 1; i++){ 
     <li><a href="/portfolio1/@i">@i</a></li> 
    } 
    if(page < totalPages){ 
     <li><a href="/portfolio1/@(page + 1)">Next</a></li> 
    } 
</ul> 
</div> 
<br> 
<!--Pagination Finish--> 
+0

好了,所以我用數目字,並稍微出錯,但我做到了一些修改,並得到了它使用此代碼... – Gavin5511

+0

半工作<! - 分頁開始 - >


<! - 分頁完成 - > – Gavin5511

+0

實際上,我只會編輯代碼在頁面的頂部。問題是,在第一頁上,它沒有顯示前一個或下一個鏈接。如果我點擊第2頁,prev和next按鈕在那裏,工作正常。另一個問題是,當我在第3頁上的第3頁時,下一個按鈕仍然存在,並且我可以移動到第4頁和第5頁等,即使沒有記錄存在? – Gavin5511