public ActionResult Index(int limit, int offset) { ViewBag.loginname = Session["loginname"]; HashSet<int> role =(HashSet<int>) Session["loginrole"]; if(role.Contains(1)) { Session["roleflag"] = "1"; ViewBag.loginrole = "管理员"; } var user=db.UserInfos.Include(u=>u.Department).ToList(); var total=user.Count; var rows=user.Skip(offset).Take(limit).ToList(); return Json(new { total = total, rows = rows },JsonRequestBehavior.AllowGet); }
//得到查询的参数 oTableInit.queryParams = function (params) { var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的 limit: params.limit, //页面大小 offset: params.offset, //页码 departmentname: $("#txt_search_departmentname").val(), statu: $("#txt_search_statu").val() }; return temp; }; return oTableInit; };
是这段JS给控制器传参的 吗 ,刚看这个插件,各方面都不懂
你可以调试看看。看看那里是不是调用了访问控制器里面的action路径。一般在form表单里面标记name属性的值给参数。或者通过get的方式传参。
这是bootstrap-table插件
@sucheng1992: 你那个js就是直接调用插件来请求访问控制器是吧?在请求的action里面调试就知道了。
limit: params.limit, //页面大小 在控件中这里默认页面条数为10 ,你在做分页的时候就获取到这个limit——>Request.Params["limit"]/Request.QueryString["limit"]--10
offset: params.offset, //页码 等同上
同问楼主 有没有解决
.bootstrapTable(
{
method : 'get', // 服务器数据的请求方式 get or post
url : prefix + "/list", // 服务器数据的加载地址
// showRefresh : true,
// showToggle : true,
// showColumns : true,
iconSize : 'outline',
toolbar : '#exampleToolbar',
striped : true, // 设置为true会有隔行变色效果
dataType : "json", // 服务器返回的数据类型
pagination : true, // 设置为true会在底部显示分页条
// queryParamsType : "limit",
// //设置为limit则会发送符合RESTFull格式的参数
singleSelect : false, // 设置为true将禁止多选
// contentType : "application/x-www-form-urlencoded",
// //发送到服务器的数据编码类型
pageSize : 30, // 如果设置了分页,每页数据条数 修改这里可以修改默认limit显示条数
pageNumber : 1, // 如果设置了分布,首页页码
//search : true, // 是否显示搜索框
showColumns : false, // 是否显示内容下拉框(选择显示的列)
sidePagination : "server", // 设置在哪里进行分页,可选值为"client" 或者 "server"
queryParams : function(params) {
return {
//说明:传入后台的参数包括offset开始索引,limit步长,sort排序列,order:desc或者,以及所有列的键值对
limit: params.limit,
offset:params.offset
};
},