SoFunction
Updated on 2025-02-28

Paging control code sharing based on KO+BootStrap+MVC implementation

JS:

/// <reference path="../knockout-3.2." />
var ViewModel = function (data) {
var self = this;
 = ()
 = ();
 = ();
 = ();
 = ();
var getData = function (wantIndex) {
$.getJSON("/BaseInfor/GetList",
{
pageIndex: wantIndex, pageSize: ()
},
function (data) {
();
();
();
();
});
}
 = function (item) {
getData(item);
}
 = function () {
var wantIndex = () - 1;
if (wantIndex <= 0) return;
getData(wantIndex);
}
 = function () {
var wantIndex = () + 1;
if (wantIndex - 1 > (() / ())) return;
getData(wantIndex);
}
 = function () {
getData(1);
}
 = function () {
getData(());
}
(function () {
 = (((() / ())))
var pageCount = ();
var start = (() - 5) > 0 ? () - 5 : 0;
var end = (start + 9) < pageCount ? start + 9 : pageCount;
if (end == pageCount)
{ var start = (pageCount - 9) > 0 ? pageCount - 9 : 0;; }
();
for (var i = start; i < end; i++) {
((i + 1));
}
});
}
$(document).ready(function () {
$.getJSON("/BaseInfor/GetList",
{
pageIndex: 1, pageSize: 5
},
function (data) {
(new ViewModel(data));
});
});

HTML:

&lt;table class="table table - striped"&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;gender&lt;/th&gt;
&lt;th&gt;Year of birth&lt;/th&gt;
&lt;th&gt;age&lt;/th&gt;
&lt;th&gt;nationality&lt;/th&gt;
&lt;th&gt;ID number&lt;/th&gt;
&lt;th&gt;Join the Party time&lt;/th&gt;
&lt;th&gt;Working hours&lt;/th&gt;
&lt;th&gt;Hometown&lt;/th&gt;
&lt;th&gt;place of birth&lt;/th&gt;
&lt;th&gt;ID photo&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;!-- ko foreach: ObjectList --&gt;
&lt;tr&gt;
&lt;td data-bind="text:Name"&gt;&lt;/td&gt;
&lt;td data-bind="text:Gender"&gt;&lt;/td&gt;
&lt;td data-bind="text:BirthDate"&gt;&lt;/td&gt;
&lt;td data-bind="text:Age"&gt;&lt;/td&gt;
&lt;td data-bind="text:Nation"&gt;&lt;/td&gt;
&lt;td data-bind="text:IDNumber"&gt;&lt;/td&gt;
&lt;td data-bind="text:PartyTime"&gt;&lt;/td&gt;
&lt;td data-bind="text:WorkTime"&gt;&lt;/td&gt;
&lt;td data-bind="text:hail"&gt;&lt;/td&gt;
&lt;td data-bind="text:BirthAddress"&gt;&lt;/td&gt;
&lt;td data-bind="text:Photo"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;!-- /ko --&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;div class="btn-toolbar" role="toolbar"&gt;
&lt;div class="btn-group"&gt;
&lt;input class="btn btn-success" type="button" value="&lt;" data-bind="click:perPageClick" /&gt;
&lt;/div&gt;
&lt;div class="btn-group"&gt;
&lt;input class="btn btn-success" type="button" data-bind="value:'1',click:firstPageClick" /&gt;
&lt;/div&gt;
&lt;div class="btn-group"&gt;
&lt;!-- ko foreach: btns --&gt;
&lt;!-- ko if: $data==$() --&gt;
&lt;button class="btn btn-success" type="button" data-bind="text:$data,click:$"&gt;&lt;/button&gt;
&lt;!-- /ko --&gt;
&lt;!-- ko ifnot: $data==$() --&gt;
&lt;button class="btn btn-default" type="button" data-bind="text:$data,click:$"&gt;&lt;/button&gt;
&lt;!-- /ko --&gt;
&lt;!-- /ko --&gt;
&lt;/div&gt;
&lt;div class="btn-group"&gt;
&lt;input class="btn btn-success" type="button" data-bind="value:pageTotal,click:lastPageClick" /&gt;
&lt;/div&gt;
&lt;div class="btn-group"&gt;
&lt;input class="btn btn-success" type="button" value="&gt;" data-bind="click:nextPageClick" /&gt;
&lt;/div&gt;
&lt;div class="btn-group"&gt;
&lt;span data-bind="text:TotalCount()+'Standard data'" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;script src="/Scripts/jquery-2.1."&gt;&lt;/script&gt;
&lt;script src="/Scripts/knockout-3.2."&gt;&lt;/script&gt;
&lt;script src="/Scripts/"&gt;&lt;/script&gt;
&lt;script src="/Content/Plus/bootstrap-3.2.0-dist/js/"&gt;&lt;/script&gt;
&lt;link href="/Content/Plus/bootstrap-3.2.0-dist/css/" rel="stylesheet" /&gt;
&lt;script src="/Scripts/BaseInfor/"&gt;&lt;/script&gt;

The above is the sharing of the paging control code based on KO+BootStrap+MVC implemented by the editor. I hope it will be helpful to everyone. If you have any questions, please leave me a message and the editor will reply to everyone in time. Thank you very much for your support for my website!