asp.net-mvc-3 – 当两个网格位于同一页面时进行排序

前端之家收集整理的这篇文章主要介绍了asp.net-mvc-3 – 当两个网格位于同一页面时进行排序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的页面上,我有两个webGrids.当我单击一个对该列进行排序时,两个网格都在该列上排序.对仅在一个列中的列进行排序,根本不排序.

我注意到排序的工作原理是使标题成为同一页面链接,在查询字符串中包含列和方向.这解释了两个网格都受到影响.我想知道webGrid是否有一些功能解决我的问题,或者我应该自己修复它.

我计划“自己修复”的方法是首先通过设置htmlAttributes为表标记添加id属性.然后我将使用jQuery为每个webgrid找到这个id,并将该id包含在links参数中.然后当加载带有网格的页面时,我将根据这些参数强制设置要排序的列.

在我看来,webGrid不是设计在与另一个webGrid的页面上.但是,我觉得在我的情况下这是理想的.我更喜欢使用一些标准方式(内置或其他人使用).

所以问题是,最好的方法是什么?如果没有最好的方法,我的方式是一个好方法(我忘记了什么)?

提前致谢.

解决方法

我想你需要设置以下属性
string fieldNamePrefix = null 
//The value which prefixes the default querystring fields

string pageFieldName = null 
//A value that replaces the default querystring page field 


var grid1 = new WebGrid(canPage: true,canSort: true,ajaxUpdateContainerId: "grid1",fieldNamePrefix:"g1",pageFieldName: "p1");

var grid2 = new WebGrid(canPage: true,ajaxUpdateContainerId: "grid2",fieldNamePrefix:"g2",pageFieldName: "p2");

猜你在找的asp.Net相关文章