今天,我学了一点关于JSon对象,现在把它写下来:
我在服务器端获得数据,并把它转化成Json对象,其代码是:
WebForm1.aspx.cs:
protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
ds = Departmentbll.GetAllList();
DataTable dt = ds.Tables[0];
string str = "";
str = JsonHelper.ToJson(dt);
Response.Write(str);
Response.Flush();
Response.End();
}
它的ToJson()的代码是: public static string ToJson( DataTable dt)
{
StringBuilder sb = new StringBuilder();
sb.Append("{");
sb.Append("rows: [");
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.Append("{");
sb.Append("id:" + i);
sb.Append(",");
sb.Append("cell:");
sb.Append("[");
for (int j = 0; j < dt.Columns.Count; j++)
{
sb.Append("'" + dt.Rows[i][j] + "'");
if (j < dt.Columns.Count - 1)
{
sb.Append(",");
}//
else
{
sb.Append("");
}//
}//
sb.Append("]");
sb.Append("}");
if (i < dt.Rows.Count - 1)
{
sb.Append(",");
}//
else
{
sb.Append("");
}//
}//
sb.Append("]");
sb.Append("}");
return Convert.ToString(sb);
}
单步执行后得到的Json它的样子是:
{rows: [{id:0,cell:['00','部门','123','123 ','45465','-1','','1998-12-5 10:12:15']},
{id:1,cell:['0000','销售部','56','56 ','56','00','','1998-12-5 10:01:05']},
{id:2,cell:['000000','地市级店面','12','12 ','12','0000','','1998-12-5 10:12:15']},
{id:3,cell:['00000000','信息学院','23','23 ','23','000000','','1998-12-5 10:12:15']},
{id:4,cell:['0000000000','历山学院','78','78 ','78','00000000','','1998-12-5 10:12:15']},
{id:5,cell:['000001','郑州市店面','13','13 ','13','0000','','1998-12-5 10:12:15']},
{id:6,cell:['0001','货品部','12','12 ','12','00','','1998-12-5 10:12:15']},
{id:7,cell:['000100','你的爱好','13','13 ','15','0001','','1998-12-5 10:12:15']},
{id:8,cell:['0002','财务部','45','45 ','45','00`','','1998-12-5 10:12:15']},
{id:9,cell:['0003','仓管部','46','4 ','45','00','','1998-12-5 10:12:15']}]}
这样在页面中访问就就可用JSon对象,把服务器的数据传过来了;
$(document ).ready(function (){
//alert ("你好!");
$.ajax({
url: "WebForm1.aspx",
type: "POST",
data:null ,//post参数信息
dataType: "json",
timeout: 1000,
error: function(data){alert("error");},
success: function(data)
{
// removeAll();
// var div=$("#Deparentment");
var cell,row;
if(data.rows.length<=0)
return;
for (var iRow=0;iRow<data.rows.length;iRow++)
{
var DepartmendId=data .rows[iRow].cell[0];
var Superior=data.rows[iRow].cell[5];
var Name=data.rows[iRow].cell[1];
}
});