public class HomeController : Controller
{
//
// GET: /Home/
public ActionResult Index()
{
return View()
}
public ActionResult BindDataTable()
{
var dt = new DataTable()
dt.Columns.Add("Id")
dt.Columns.Add("Name")
for (int i = 0i <20i++)
{
var dr = dt.NewRow()
dr["Id"] = i
dr["Name"] = "楼主" + i
dt.Rows.Add(dr)
}
var json = DataTableToJson(dt)
JavaScriptSerializer ser = new JavaScriptSerializer()
var list = ser.Deserialize<dynamic>(json)
return Json(list, JsonRequestBehavior.AllowGet)
}
[NonAction]
public string DataTableToJson(DataTable dt)
{
StringBuilder Json = new StringBuilder()
Json.Append("[")
if (dt.Rows.Count >0)
{
for (int i = 0i <dt.Rows.Counti++)
{
Json.Append("{")
for (int j = 0j <dt.Columns.Countj++)
{
Json.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":\"" + dt.Rows[i][j].ToString() + "\"")
if (j <dt.Columns.Count - 1)
{
Json.Append(",")
}
}
Json.Append("}")
if (i <dt.Rows.Count - 1)
{
Json.Append(",")
}
}
}
Json.Append("]")
return Json.ToString()
}
}
View
<script>
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource: {
dataType: "json",
transport: {
read: "@Url.Action("BindDataTable")"
},
pageSize: 5
},
height: 270,
sortable: true,
pageable: true,
columns: [{
field: "Id",
width: 50
},
{
field: "Name",
title: "Name",
width: 400
}
]
})
})
</script>
<div>
<div id="grid"></div>
</div>
endo UI grid 在处理表格数据上,方便、快捷。出于需要,希望在 filter 表格后,得到所有的表格数据,当然可以在后台获取,但是通过kendo ui 的API在前端处理更为便捷。
// 获取 #grid 下的datasource
var dataSource = $("#grid").data("kendoGrid").dataSource
// 获取过滤条件
var filters = dataSource.filter()
// 获取全部表格的数据
菜单:报表->参数数据库查询:数据库连接串oracle的。
Provider=MSDAORA.1Password=口令User ID=用户名Data Source=数据库服务器名
sqlserver的。
Provider=SQLOLEDB.1Password=口令Persist Security Info=TrueUser ID=用户名Initial Catalog=数据库名Data Source=数据服务器名连接本机可以用.Use Procedure for Prepare=1Auto Translate=TruePacket Size=4096Use Encryption for Data=FalseTag with column collation when possible=False
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)