用jquery的ajax读取后台数据时怎么读取大批量数据
用jquery的ajax读取后台数据时怎么读取大批量数据,后台返回dataset对象,前台Js怎么读取和拼装,谁能把前台和后台方法都告诉一下,谢谢...
用jquery的ajax读取后台数据时怎么读取大批量数据,后台返回dataset对象,前台Js怎么读取和拼装,谁能把前台和后台方法都告诉一下,谢谢
展开
1个回答
展开全部
后台不可能直接输出dataset吧?可以通过写一个json输出类,将dataset或者datatable转成json格式输出。 首先看下asp.net的文件CustomerEdit_sale.aspx后台代码: Code [ protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { string action = Utils.Request("action"); if (action == "getcustomerbasic") //ajax请求客户基本信息 { this.customerBasic(Utils.Request("wd")); Utils.End(); } } } //输出json private void customerBasic(string strCustID) { Response.ContentType = "text/plain"; string strJson = string.Empty; TelSales telSale = new TelSales(); DataSet dsCust = telSale.QueryCustomers("customer_id=" strCustID); strJson = Utils.DataTableToJson("info", dsCust.Tables[0]); Response.Write(strJson); } 以上代码asp.net把datatable转为json的代码在这篇文章的DataTableToJson方法: //DataTable转成Json public static string DataTableToJson(string jsonName, DataTable dt) { StringBuilder Json = new StringBuilder(); Json.Append("{\"" + jsonName + "\":["); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { Json.Append("{"); for (int j = 0; j < dt.Columns.Count; j++) { 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(); } //List转成json public static string ObjectToJson<T>(string jsonName, IList<T> IL) { StringBuilder Json = new StringBuilder(); Json.Append("{\"" + jsonName + "\":["); if (IL.Count > 0) { for (int i = 0; i < IL.Count; i++) { T obj = Activator.CreateInstance<T>(); Type type = obj.GetType(); PropertyInfo[] pis = type.GetProperties(); Json.Append("{"); for (int j = 0; j < pis.Length; j++) { Json.Append("\"" + pis[j].Name.ToString() + "\":\"" + pis[j].GetValue(IL[i], null) + "\""); if (j < pis.Length - 1) { Json.Append(","); } } Json.Append("}"); if (i < IL.Count - 1) { Json.Append(","); } } } Json.Append("]}"); return Json.ToString(); }
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询