var opera;
$('#dgCMSTC').datagrid({
method: 'get',
url: '/CMSTC/Index',
singleSelect: true,
fit: true,
border: false,
pagination: true,
pageSize: 20,
columns: [[
{ field: 'TC001', title: '仓库编号', width: 100 },
{ field: 'TC002', title: '仓库名称', width: 100 },
{ field: 'TC003', title: '仓库电话', width: 100 },
{ field: 'CREATOR', title: '创建者', width: 100 },
{ field: 'CREATE_DATE', title: '创建日期', width: 100 },
{ field: 'MODIFIER', title: '修改者', width: 100 },
{ field: 'MODI_DATE', title: '修改日期', width: 100 }
]]
}
这只是一部分easyui代码, 除了url其它的和webform的一样,datagrid界面:
Index方法:
public ActionResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
JsonResult jsonData = new JsonResult
{
Data = myCMSTC
};
//return Json(jsonData, "text/html", JsonRequestBehavior.AllowGet);
return View();
}
}
这个Index里的方法究竟要怎么写才会把Json数据传给前端绑定easyui的datagrid组件,在webform里感觉很简单,mvc里还有点整不明白
6 个解决方案
#1
好久没用mvc了,这个方法返回的是视图数据,这个视图数据会根据 columns里面的field 来对应绑定。关于datagrid绑定原理,你可以打开easy那个js文件找找。
#2
jsonData 直接返回这个就是data了
至于前台界面怎样绑定 你自己看文档吧
至于前台界面怎样绑定 你自己看文档吧
#3
public ActionResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
}
return Json(myCMSTC,JsonRequestBehavior.AllowGet);
//前台的field 字段名和你实体的字段名相同就可以绑定上了,用F12调试看看是否发送了请求以及是否返回了json数据,有错很快也能能整明白
}
#4
control中用 return Json(model); 返回json数据
js中用 $('#dg_CommGreen').datagrid('loadData', data); 绑定json数据
js中用 $('#dg_CommGreen').datagrid('loadData', data); 绑定json数据
#5
1,返回类型必须为:JsonResult
2,必须满足easyui datagrid的json数据格式,如果:{total:100,rows:[{},{}]}
eg.public JsonResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
JsonResult jsonData = new JsonResult
{
Data = myCMSTC
};
return Json(new { total= 2, rows= myCMSTC.ToList()}, "text/html", JsonRequestBehavior.AllowGet);
}
}
2,必须满足easyui datagrid的json数据格式,如果:{total:100,rows:[{},{}]}
eg.public JsonResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
JsonResult jsonData = new JsonResult
{
Data = myCMSTC
};
return Json(new { total= 2, rows= myCMSTC.ToList()}, "text/html", JsonRequestBehavior.AllowGet);
}
}
#6
谢谢,搞定了,分开了两个方法,至于为什么自己去想
,代码如下,给有需要兄弟看下:
public ActionResult Index()
{
return View();
}
public JsonResult GetJson()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的
return Json(new { total = myCMSTC.Count, rows = myCMSTC }, JsonRequestBehavior.AllowGet);
}
}
JS Easy Ui:
$.ajax({
method: 'get',
dataType: 'json',
url: '/CMSTC/GetJson',
error: function (XMLHttpRequest, textStatus, errorThrown) {
$.messager.alert('info', errorThrown, 'info');
},
success: function (data) {
$('#dgCMSTC').datagrid('loadData', data);
}
});
首先初始化DataGrid,再用这个ajax方法加载数据给datagrid就好了!
谢谢大家,结贴给分!!
public ActionResult Index()
{
return View();
}
public JsonResult GetJson()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的
return Json(new { total = myCMSTC.Count, rows = myCMSTC }, JsonRequestBehavior.AllowGet);
}
}
JS Easy Ui:
$.ajax({
method: 'get',
dataType: 'json',
url: '/CMSTC/GetJson',
error: function (XMLHttpRequest, textStatus, errorThrown) {
$.messager.alert('info', errorThrown, 'info');
},
success: function (data) {
$('#dgCMSTC').datagrid('loadData', data);
}
});
首先初始化DataGrid,再用这个ajax方法加载数据给datagrid就好了!
谢谢大家,结贴给分!!
#1
好久没用mvc了,这个方法返回的是视图数据,这个视图数据会根据 columns里面的field 来对应绑定。关于datagrid绑定原理,你可以打开easy那个js文件找找。
#2
jsonData 直接返回这个就是data了
至于前台界面怎样绑定 你自己看文档吧
至于前台界面怎样绑定 你自己看文档吧
#3
public ActionResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
}
return Json(myCMSTC,JsonRequestBehavior.AllowGet);
//前台的field 字段名和你实体的字段名相同就可以绑定上了,用F12调试看看是否发送了请求以及是否返回了json数据,有错很快也能能整明白
}
#4
control中用 return Json(model); 返回json数据
js中用 $('#dg_CommGreen').datagrid('loadData', data); 绑定json数据
js中用 $('#dg_CommGreen').datagrid('loadData', data); 绑定json数据
#5
1,返回类型必须为:JsonResult
2,必须满足easyui datagrid的json数据格式,如果:{total:100,rows:[{},{}]}
eg.public JsonResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
JsonResult jsonData = new JsonResult
{
Data = myCMSTC
};
return Json(new { total= 2, rows= myCMSTC.ToList()}, "text/html", JsonRequestBehavior.AllowGet);
}
}
2,必须满足easyui datagrid的json数据格式,如果:{total:100,rows:[{},{}]}
eg.public JsonResult Index()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的List泛型数据
JsonResult jsonData = new JsonResult
{
Data = myCMSTC
};
return Json(new { total= 2, rows= myCMSTC.ToList()}, "text/html", JsonRequestBehavior.AllowGet);
}
}
#6
谢谢,搞定了,分开了两个方法,至于为什么自己去想
,代码如下,给有需要兄弟看下:
public ActionResult Index()
{
return View();
}
public JsonResult GetJson()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的
return Json(new { total = myCMSTC.Count, rows = myCMSTC }, JsonRequestBehavior.AllowGet);
}
}
JS Easy Ui:
$.ajax({
method: 'get',
dataType: 'json',
url: '/CMSTC/GetJson',
error: function (XMLHttpRequest, textStatus, errorThrown) {
$.messager.alert('info', errorThrown, 'info');
},
success: function (data) {
$('#dgCMSTC').datagrid('loadData', data);
}
});
首先初始化DataGrid,再用这个ajax方法加载数据给datagrid就好了!
谢谢大家,结贴给分!!
public ActionResult Index()
{
return View();
}
public JsonResult GetJson()
{
using (var myDb = new JBJXC.Models.Db.jinbudb<JBJXC.Models.BASIC.CMSTC>(strConn))
{
var myCMSTC = myDb.QueryEntity(); //查询数据都是正确的
return Json(new { total = myCMSTC.Count, rows = myCMSTC }, JsonRequestBehavior.AllowGet);
}
}
JS Easy Ui:
$.ajax({
method: 'get',
dataType: 'json',
url: '/CMSTC/GetJson',
error: function (XMLHttpRequest, textStatus, errorThrown) {
$.messager.alert('info', errorThrown, 'info');
},
success: function (data) {
$('#dgCMSTC').datagrid('loadData', data);
}
});
首先初始化DataGrid,再用这个ajax方法加载数据给datagrid就好了!
谢谢大家,结贴给分!!