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上.有兴趣的朋友可以看看,欢迎大家指出不足之处. 看过了园子里的几篇关 ...
随机推荐
- 利用Fragment创建动态UI 之 Fragment之间的通信
为了可以复用一个fragment,所以在定义fragment的时候,要把它定义为一个完全独立和模块化,它有它自己的layout和行为.当你定义好了这些可复用的fragment,可以把他们和activi ...
- linq检索带命名空间的xml
XElement el = XElement.Load(fil); XNamespace ns = "http://schemas.microsoft.com/ado/2009/11/edm ...
- request常用方法小结
HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户这些信息. req ...
- 和阿文一起学H5——音乐素材
国内 1.网易云音乐 http://music.163.com/ 网易云音乐有听歌识曲功能,听几秒中可听出是什么歌. 微信摇一摇也有听歌识曲功能. 2.只要伴奏不要人声 http://5sing.ku ...
- js和jQuery创建元素和把元素插入到文档中所用的方法
js创建元素: document.createElement(" 创建的元素"); //“创建的元素”指:p ,h1,div,span........ js插入元素: docu ...
- jQuery之锚点带动画跳转特效
背景图片为金木研,这是我最爱的一张图. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...
- Linux下c函数dlopen实现加载动态库so文件代码举例
dlopen()是一个强大的库函数.该函数将打开一个新库,并把它装入内存.该函数主要用来加载库中的符号,这些符号在编译的时候是不知道的.这种机制使得在系统中添加或者删除一个模块时,都不需要重新编译了. ...
- StrictMode模式介绍
最新的Android平台中(Android 2.3起),新增加了一个新的类,叫StrictMode(android.os.StrictMode).这个类可以用来帮助开发者改进他们编写的应用,并且提供了 ...
- 第五十九篇、OC录制小视频
用 AVCaptureSession + AVCaptureMovieFileOutput 来录制视频,并通过AVAssetExportSeeion 手段来压缩视频并转换为 MP4 格 AVFound ...
- ios开发:GCD多线程
ios有三种多线程编程技术,分别是NSThread,Cocoa NSOperation和GCD,GCD全称Grand Central Dispatch 是Apple开发的一个多核编程的解决方法,在iO ...