用jquery的ajax读取后台数据时怎么读取大批量数据
用jquery的ajax读取后台数据时怎么读取大批量数据,后台返回dataset对象,前台Js怎么读取和拼装,谁能把前台和后台方法都告诉一下,谢谢...
用jquery的ajax读取后台数据时怎么读取大批量数据,后台返回dataset对象,前台Js怎么读取和拼装,谁能把前台和后台方法都告诉一下,谢谢
展开
3个回答
2013-07-11
展开全部
我是做java的,java里有fastjson等jar文件,你应该是.NET的吧,后台的json数据你已经传到前台了,
.NET我记得应该可以引用DataContractJsonSerializer类,或者你可以去json.org这个网站找到.NET相关的JSON dll文件,可能操作会简单些。
前台写法:
/**
* parmas: 参数
* data:返回数据
*/
$.getJSON('XXXX.aspx', params, function(data){
//这里的data直接可以当做dom对象去操作
//如果返回的是HashMap的json对象,js部分可以data.name取值
//如果返回的是List集合的json对象,js部分可以
for(var o in data){
alert(o.name);
}
})
回答是否满意,如果满意,请采纳!等待收分!
.NET我记得应该可以引用DataContractJsonSerializer类,或者你可以去json.org这个网站找到.NET相关的JSON dll文件,可能操作会简单些。
前台写法:
/**
* parmas: 参数
* data:返回数据
*/
$.getJSON('XXXX.aspx', params, function(data){
//这里的data直接可以当做dom对象去操作
//如果返回的是HashMap的json对象,js部分可以data.name取值
//如果返回的是List集合的json对象,js部分可以
for(var o in data){
alert(o.name);
}
})
回答是否满意,如果满意,请采纳!等待收分!
2013-07-11
展开全部
后台不可能直接输出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();
}
首先看下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();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-04-05
展开全部
前台第一个TestServlet为你要跳转的servlet或action,第二个你要传的参数,第三个你后台返回的值,加入值是一个json类型,就用$.each来遍历$.post("TestServlet",{ name: "John", time: "2pm" },function(data){
$.each(data,function(index,elent){
alert( eval(elent));
});
});
$.each(data,function(index,elent){
alert( eval(elent));
});
});
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询