1. 涉及到的技术。
asp.net mvc 3.0.
jquery, jquery easyui datagrid.
jquery-json - 把js对象,生成json格式的插件 (http://code.google.com/p/jquery-json/ )
2. 场景。
我们知道由datagrid编辑后生成的数据是js对象。 这样我们提交到服务器,是无法解析的(如果你有好的方式,请在下面评论,ths)。所以需要解析为json.
datagrid 生成json :
var table = $("#table_directory").datagrid("getRows");
var obj = "[";
for (var i = 0; i < table.length; i++) {
$('#table_directory').datagrid("endEdit", i);
obj += $.toJSON(table[i]);
if (i != table.length - 1) {
obj += ",";
}
}
obj += "]";
服务器解析json:
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
List<SectionBase> listSectionBase = javaScriptSerializer.Deserialize(jsonChapter, typeof(List<SectionBase>)) as List<SectionBase>;
SectionBase 这个类不用管。
是你自己的类即可,哪怕服务器端的属性和前端提交的不一致,也没有问题。 这样数据已经到了服务器,自己就可以继续进行服务器操作了。
作者:管宇
欢迎转载,请标明出处。