asp.net Mvc4 使用ajax結合分頁外掛實現無重新整理分頁
本文為在mvc4中使用ajax實現無重新整理分頁demo,記錄一下。
解決方案思想:頁面資料的初始載入和按頁載入都是通過ajax來進行,頁面分頁連結點選後利用ajax技術傳送當前頁碼到後端控制器,後端控制器根據當前頁碼和設定的pageSize從資料庫中取出對應頁的資料。後端控制器處理完後利用PartialView方法把資料返回到分部檢視中,利用ViewBag來返回總記錄數和pageSize。ajax通過回撥函式把控制器返回的分部檢視內容載入到主檢視中顯示。
說明:分頁具體的分頁導航和樣式使用了kkpager外掛。
1、主檢視(用於顯示資料)程式碼
<link href="~/Content/kkpager_blue.css" rel="stylesheet" /> <script src="~/Content/kkpager.js"></script> <table id="result" class="posts block"></table> <nav id="kkpager" class="posts block pagination"></nav> <script type="text/javascript"> $(function () { GetArticlesData(1); }); function getParameter(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; } function GetArticlesData(pageIndex) { var ajaxUrl = '/TestDataDB/AjaxPaging?pageIndex=' + pageIndex; var ajaxType = 'post'; var ajaxDataType = 'text'; var sucFun = function (data, status) { if (data == null && status != "success") { alert("獲取資料失敗!"); return false; } else { $("#result").html(data); //定義分頁樣式 var totalCount = parseInt('@ViewBag.TotalCount'); var pageSize = parseInt('@ViewBag.PageSize'); var pageNo = getParameter('pno');//該引數為外掛自帶,不設定好,呼叫資料的時候當前頁碼會一直顯示在第一頁 if (!pageNo) { pageNo = 1; } var totalPages = totalCount % pageSize == 0 ? totalCount / pageSize : (parseInt(totalCount / pageSize) + 1); kkpager.generPageHtml({ pno: pageNo, total: totalPages, totalRecords: totalCount, mode: 'click', click: function (n) { this.selectPage(n);//外掛自帶的方法,手動呼叫某一頁碼 searchPage(n); return false; } }); } }; //ajax引數設定 var Option = { url: ajaxUrl, type: ajaxType, dataType: ajaxDataType, cache: false, //設定為 false 將不會從瀏覽器快取中載入請求資訊。 async: true, //(預設: true),所有請求均為非同步請求。傳送同步請求,請將此選項設定為 false。同步請求將鎖住瀏覽器,使用者其它操作必須等待請求完成才可以執行。 timeout: 3600, //設定請求超時時間(毫秒)。此設定將覆蓋全域性設定。 error: function () { }, success: sucFun, beforeSend: function () { } }; $.ajax(Option); return false; } //ajax翻頁 function searchPage(n) { GetArticlesData(n); } </script>
2、分部檢視程式碼
3、控制器獲取資料程式碼@model IEnumerable<Test13.Models.TestDataDB> @{ ViewBag.Title = "AjaxFenbuView"; } <tr> <th> @Html.DisplayNameFor(model => model.Uid) </th> <th> @Html.DisplayNameFor(model => model.Uname) </th> <th> @Html.DisplayNameFor(model => model.Upwd) </th> <th> @Html.DisplayNameFor(model => model.Udata) </th> <th></th> </tr> @foreach (Test13.Models.TestDataDB item in Model) { <tr> <td>@item.Uid</td> <td>@item.Uname</td> <td>@item.Upwd</td> <td>@item.Udata</td> <td> @Html.ActionLink("編輯", "Edit", new { id=item.ID }) | @Html.ActionLink("檢視詳細", "Details", new { id=item.ID }) | @Html.ActionLink("刪除", "Delete", new { id=item.ID }) </td> </tr> }
最後上個效果圖:private readonly int pageSize =1; public ActionResult AjaxFenYe() { ViewBag.PageSize = pageSize; ViewBag.TotalCount = db.TestDataDBS.Count(); return View(); } public ActionResult AjaxPaging(int pageIndex = 1) { var persons = (from p in db.TestDataDBS orderby p.ID descending select p).Skip((pageIndex - 1) * pageSize).Take(pageSize); return PartialView("AjaxFenbuView", persons.ToList()); }
相關推薦
asp.net Mvc4 使用ajax結合分頁外掛實現無重新整理分頁
本文為在mvc4中使用ajax實現無重新整理分頁demo,記錄一下。 解決方案思想:頁面資料的初始載入和按頁載入都是通過ajax來進行,頁面分頁連結點選後利用ajax技術傳送當前頁碼到後端控制器,後端控制器根據當前頁碼和設定的pageSize從資料庫中取出對應頁的資料。
ASP.NET+Ajax+JQuey+Json資料+儲存過程實現無重新整理分頁
<!--引入jquery-1.6.2--> <!--ShowPageData1.aspx頁面--> <script src="../Jquery/jquery-1.6.2.min.js" type="text/javascript">&l
asp.net mvc基於jQuery+Ajax實現無重新整理分頁
解決方案思想:頁面資料的初始載入和按頁載入都是通過ajax來進行,頁面分頁連結點選後利用ajax技術傳送當前頁碼到後端控制器,後端控制器根據當前頁碼和設定的pageSize從資料庫中取出對應頁的資料。後端控制器處理完後利用PartialView方法把資料返回到分部檢視中,利用
tp5+ajax+jq實現無重新整理分頁
tp5框架裡面自帶有panigate()+rende()的方法可以超簡單的實現分頁,但是就是看著一直要重新整理很不爽,所以找了網上的好多程式碼,終於找到了一個邏輯簡單的無重新整理分頁,以下是我更改適合之後實現的效果 程式碼裡面有詳細註釋了,就不多說了,說明一下分頁查詢的原
javascript專案實戰---ajax實現無重新整理分頁
<?php class Pagination { private $total; //資料表中總記錄數 private $listRows; //每頁顯示行數 private $limit; //mysql 資料庫的limit private $uri; //分頁
asp.net ajax 和 asp.net 2.0中的fileupload合力打造無重新整理檔案上傳控制元件
{20 bool fileOK =false;21 //獲取根檔案絕對路徑22string path = Server.MapPath("~/UpLoad/");23 //如上傳了檔案,就判斷檔案格式24 FileUpload FU = FileUplo
SSH三大框架的整合+利用Ajax實現無重新整理分頁
以下是我利用Struts2.3.24、Spring4.0、Hibernate4.2 結合Mysql資料庫進行的ssh整合,實現分頁需要json.js 首先ssh的整合需要匯入所有的jar包 在web.xml <?xml version="1.0" e
ASP.NET MVC4分頁Site.CSS
ASP.NET MVC 4 的基礎分頁的CSS樣式: body { font-family: Calibri,Georgia,"Times New Roman"; margin: 0; } DIV#header { background-color: #444; bo
Asp.Net+Jquery Ajax非同步分頁
前段時間做的一個專案,需要實現的功能是彈出一個選擇資料的視窗,裡面的資料是可以分頁的,選擇相應的行資料填充到頁面的文字框中(將其中的分頁資料做成了Ajax 非同步取資料),下面的分頁導航按鈕是仿照 部落格園 做的,給自己做一個記錄.......
Asp.Net北大青鳥總結(四)-使用GridView實現真假分頁
void 每次 第三方控件 ati exec open() lld ret ges 這段時間看完了asp.net視頻。可是感覺到自己的學習好像沒有鞏固好,於是又在圖書館裏借了幾本關於asp.net的書感覺真的非常好自己大概對於asp.net可以實現主要的小D
使用pagination分頁外掛實現ajax分頁
1.html頁面引入jq和js外掛 <script language="javascript" type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <s
.Net MVC4 使用心得(三)實現分頁控制元件
之前寫的,很凌亂,而且,幾乎不粘程式碼,這不便於理解和也無法直接尋找可用程式碼。以後的文章會盡量引入程式碼例項。 這次需要一個翻頁控制元件。之前webform直接拖個aspnetpager,寫寫前臺樣式和後臺程式碼就好了,需要資料繫結時可以直接用pa
Bootstrap Paginator分頁外掛+ajax 實現動態無重新整理分頁
之前做分頁想過做淘寶的那個,但是因為是後臺要求不高,就Bootstrap Paginator外掛感覺還蠻容易上手,所以就選了它。 Bootstrap Paginator分頁外掛下載地址: 1.這是需要分頁的頁面放的 js函式: <span style="font-
ASP.NET使用Ajax
錯誤信息 alt bst ror sub img request ssr onf 一、新建一個html頁面,如註冊頁面"Register.htm" <!DOCTYPE html> <html > <head> <title
ASP.NET MVC4中的App_start中BundleConfig的介紹使用
自動配置 cat als sax 初始化 .cn 多個 屬性 要點 在BundleConfig.cs中,指定CSS和JS,主要用來壓縮JS和CSS 在ASP.NET MVC4中(在WebForm中應該也有),有一個叫做Bundle的東西,它用來將js和css進行壓縮
Asp.net MVC4高級編程學習筆記-視圖學習第一課20171009
強類型 編寫 ret namespace i++ 智能 權限 eba 轉換成 首先解釋下:本文只是對Asp.net MVC4高級編程這本書學習記錄的學習筆記,書本內容感覺挺簡單的,但學習容易忘記,因此在邊看的同時邊作下了筆記,可能其它朋友看的話沒有情境和邏輯順序還請諒解
Asp.net MVC4高級編程學習筆記-視圖學習第二課Razor視圖引擎20171010
space view part scrip for span 通過 文本 電子郵件 Razor視圖引擎 1、常用寫法 @標記代碼的轉換字符。 示例: <h1>hello,it’s @users.count items.</h1> //這裏會自動識別
asp.net利用Ajax和Jquery在前臺向後臺傳參數並返回值
否則 cli for res 反序 tty 服務器 .ajax content asp.net利用Ajax和Jquery在前臺向後臺傳參數並返回值,通過aspx.cs中的靜態方法WebMethod進行處理 後臺代碼: using System.Web.Service
Asp.net MVC4高級編程學習筆記-模型學習第五課MVC表單和HTML輔助方法20171101
流量 取值 工作 sin 輔助 一個點 大量 元數據 view MVC表單和HTML輔助方法 一、表單的使用。 表單中的action與method特性。Action表示表單要提交往那裏,因此這裏就有一個URL。這個URL可以是相對或絕對地址。表單默認的method屬性值是g
Mvc多級Views目錄 asp.net mvc4 路由重寫及 修改view 的尋找視圖的規則
目錄 for .net bool action htm 命名 resource 訪問規則 一般我們在mvc開發過程中,都會碰到這樣的問題。頁面總是寫在Views文件夾下,而且還只能一個Controller的頁面只能寫在相應的以 Controller名命名的文件夾下。如果我們