由于DataGrid自带有Post方式,使用Url可以向指定的地址Post数据,所以从这方面来看和Jquery的Ajax非常像(我想应该就是使用的Ajax,不过没有深入研究过Easyui的源代码)。但是区别于Ajax,DataGrid的参数不是使用Data属性(Data属性中的数据是显示在表格中的),而是使用QueryParams这个属性。
简单举个例子,从A页面点击某个链接跳转到B页面,从B页面显示A中链接内容的详细信息。这里就要求在A页面中点击链接时需要将可以查询的主键传递过来。从而在B页面刷新时在服务器端根据该主键进行查询。JS示例代码如下:
$('#tb').datagrid({
url: 'Data/设备情况明细表.aspx',
width: '100%',
fitColumns: true,
showFooter: true,
singleSelect: true,//只允许选择一行
loadMsg: "正在努力加载,请稍等。",
queryParams: id: getParameter("id"),
columns: [[
{ field: '_id', title: '行号', fixed: true },
{ field: '_j', title: '铁路局', fixed: true },
{ field: '_name', title: '测点名称', fixed: true }
]]
});
在 设备情况明细表.aspx 页面中 C#代码示例如下:
public string id
{
get
{
if (Request["id"] != null && Request["id"].ToString() != "")
{
return Request["id"].ToString();
}
else
{
return "";
}
}
}
这样在服务器中就可以获取到前台传递过来的参数内容。