Asp.Net MVC结合ExtJs gridPanel 分页和高度自适应
Ext.onReady(function () {
gridPanel();
var panel = Ext.getCmp('gridPanel');
window.onresize = function () {
panel.setHeight(document.documentElement.clientHeight);
};
});
function gridPanel() {
var pagingBar = Ext.widget('pagingtoolbar', {
store: store,
displayInfo: true,
displayMsg: '显示 {0} - {1} ,共 {2} 记录'
});
var panel = new Ext.container.Viewport({
items: {
xtype: 'gridpanel',
id: 'gridPanel',
store: store,
height: document.documentElement.clientHeight,
columns: [
{ header: "Id", flex: 1, dataIndex: 'Id' },
{ header: "标题", width: 200, sortable: false, dataIndex: 'Title' },
{ header: "内容", width: 300, sortable: true, dataIndex: 'Contents' },
{ header: "点击数", width: 80, align: 'center', sortable: true, dataIndex: 'ClickCount' },
{ header: "发表时间", width: 110, sortable: true, dataIndex: 'CreateTime' },
{ header: "更新时间", width: 110, sortable: true, dataIndex: 'UpdateTime' }
],
loadMask: true,
disableSelection: true,
viewConfig: {
stripeRows: true
},
tbar: ['->',
{ text: '添加', icon: '../../../Images/extjs/add.png' },
{ text: '编辑', icon: '../../../Images/extjs/pencil.png' },
{ text: '删除', icon: '../../../Images/extjs/delete.png' }
],
bbar: pagingBar
}
});
}
var store = Ext.create('Ext.data.Store', {
pageSize: 20,
fields: ['Id', 'Title', 'Contents', 'ClickCount', 'CreateTime', 'UpdateTime'],
remoteSort: true,
proxy: {
type: 'ajax',
url: '/Manage/ArticleData',
reader: {
type: 'json',
root: 'topics',
totalProperty: 'totalCount'
}
}
});
store.load({ params: { start: 0, limit: 20} });
MVC:Controller action
public ActionResult ArticleData(string start, string limit)
{
ArticleDal articleDal = new ArticleDal(_session);
var total = 0;
var data = articleDal.MyGetAll2(int.Parse(start), int.Parse(limit), ref total);
var json = Json(new { totalCount = total, topics = data }, JsonRequestBehavior.AllowGet);
return json;
}
数据访问层:Nhibernate分页
public IEnumerable<ArticleView> MyGetAll2(int start, int limit, ref int count)
{
try
{
var query = _session.CreateCriteria<Article>();
count = query.List<Article>().Count;
var data = query.SetFirstResult(start)
.SetMaxResults(limit)
.AddOrder(new Order("CreateTime", false))
.List<Article>();
return ArticleMapper.GetArticleView(data);
}
catch (Exception)
{
throw;
}
}

有问题及时和我联系:zhangwei900808@126.com
Asp.Net MVC结合ExtJs gridPanel 分页和高度自适应的更多相关文章
- asp.net mvc 的几种分页Pager
第一种 /// <summary> /// 分页Pager显示 /// </summary> /// <param name="html">&l ...
- Asp.Net MVC EasyUI DataGrid查询分页
function doSearch() { //查询方法 var searchValue = $('#txtQueryTC001').textbox('getText'); $('#dgCMSTC') ...
- asp.net mvc 简易通用自定义Pager实现分页
asp.net mvc 自定义Pager实现分页 Intro 一个WEB应用程序中经常会用到数据分页,本文将实现一个简单通用的分页组件,包含一个 PagerModel (用来保存页码信息),一个 Ht ...
- ASP.NET MVC分页实现
ASP.NET MVC中不能使用分页控件,所以我就自己写了一个分页局部视图,配合PageInfo类,即可实现在任何页面任意位置呈现分页,由于采用的是基于POST分页方式,所以唯一的限制就是必须放在FO ...
- Extjs GridPanel用法详解
Extjs GridPanel 提供了非常强大数据表格功能,在GridPanel可以展示数据列表,可以对数据列表进行选择.编辑等.在之前的Extjs MVC开发模式详解中,我们已经使用到了GridPa ...
- 在 ASP.NET MVC 中充分利用 WebGrid (microsoft 官方示例)
在 ASP.NET MVC 中充分利用 WebGrid https://msdn.microsoft.com/zh-cn/magazine/hh288075.aspx Stuart Leeks 下载代 ...
- 11、ASP.NET MVC入门到精通——AspnetMVC分页
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 说起分页,这基本上是我们Web开发中遇见得最多的场景,没有之一,可即便如此,要做出比较优雅的分页还是需要技巧的.这里我先说一种ASP.NET ...
- ASP.NET MVC搭建项目后台UI框架—6、客户管理(添加、修改、查询、分页)
目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...
- 让Asp.net mvc WebAPI 支持OData协议进行分页查询操作
这是我在用Asp.net mvc WebAPI 支持 OData协议 做分页查询服务时的 个人拙笔. 代码已经开发到oschina上.有兴趣的朋友可以看看,欢迎大家指出不足之处. 看过了园子里的几篇关 ...
随机推荐
- 【转】十二个移动App云测试服务盘点
随着移动设备.操作系统版本的碎片化,测试工作对于移动开发团队而言越来越成为一个沉重的包袱,不过这也带来了商机,现在市场上有不少服务和平台提供云测试工具,可以对移动App进行自动化测试,提供测试报告和优 ...
- 数组和ArrayList 相互转换
Dim params(10) As DbParameter params(0) = DBHelper.CreateDbParameter("@RegName", Jz_RegInf ...
- JavaScript学习笔记(13)——BOM
1.window 所有浏览器都支持window对象,它表示浏览器窗口本身. 所有 JavaScript 全局对象.函数以及变量均自动成为 window 对象的成员. 全局变量是 window 对象的属 ...
- [译]使用Babel和Browserify创建你的ES6项目
原文地址:Setting up an ES6 Project Using Babel and Browserify JavaScript的发展日新月异,ES6很快就要接管JS了.很多著名的框架像Ang ...
- 【leetcode】12. Integer to Roman
题目描述: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range fr ...
- 找个输入IPoint在某个FeatureClass上距离最近的要素
/// <summary> /// 得到输入点在输入图层上的最近点 /// </summary> /// <param name="randomPoints ...
- 小黑的镇魂曲(HDU2155:贪心+dfs+奇葩解法)
题目:点这里 题目的意思跟所谓的是英雄就下100层一个意思……在T秒内能够下到地面,就可以了(还有一个板与板之间不能超过H高). 接触这题目是在昨晚的训练赛,当时拍拍地打了个贪心+dfs,果断跟我想的 ...
- Nginx日志按天分割
核心思想:使用crontab在每日23:59执行日志分割. 1.配置nginx日志信息,vim /etc/logrotate.d/nginx /var/log/nginx/*.log { nocomp ...
- php function 定义时函数名前加&符号的意义
看了很多帖子,但是都不能理解,又去看了很多资料,终于名白了.记下备忘. 问题:php在声明函数时,函数名前面的&符号有什么用? 一直想不通.很多帖子说类似于变量的$a=&$b,但是$b ...
- php删除html标签的三种解决方法
分享下PHP删除HTMl标签的三种方法. 方法1:直接取出想要取出的标记 <?php //取出br标记 function strip($str) { $str=str_replace(" ...