本文实例讲述了jquery解析json格式数据的方法。分享给大家供大家参考,具体如下:
json数据是我们常用的一种小型的数据实时交换的一个东西,他可以利用jquery或js进行解析,下面我来介绍jquery解析json字符串方法。
一、jQuery解析Json数据格式:
使用这种方法,你必须在Ajax请求中设置参数:
dataType: "json"
通常情况下,你可以从后台返回JSON数据,前台就交给jQuery啦,哈哈!!
jquery异步请求将type(一般为这个配置属性)设为“json”,或者利用$.getJSON()方法获得服务器返回,那么就不需要eval()方法了,因为这时候得到的结果已经是json对象了,只需直接调用该对象即可,这里以$.getJSON方法为例
例1
代码如下:
jquery
二、jQuery解析Json对象:
jQuery提供了另一种方法“parseJSON”,这需要一个标准的JSON字符串,并返回生成的JavaScript对象。让我们来看看语法:
代码如下:
看看它是如何运用的到实际开发中的:
补充:
jquery解析json数据完整实例:
一般处理文件(Handler.ashx)
sqlConnection conn = new sqlConnection(str);
conn.Open();
sqlCommand cmd = new sqlCommand();
cmd.Connection = conn;
cmd.CommandText = "select ProID,ProName,url from Project where Adress = '哈尔滨'";
DataSet ds = new DataSet();
sqlDataAdapter da = new sqlDataAdapter(cmd);
da.Fill(ds);
string sb = CreateJsonParameters(ds.Tables[0]);
context.Response.ClearContent();
context.Response.Write(sb.ToString());
context.Response.End();
}
}
}
///
/// 构建JSON字符串
/// @H_403_52@
///
///
public string CreateJsonParameters(DataTable dt)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
if (dt != null && dt.Rows.Count > 0)
{
sb.Append("[");
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.Append("{");
for (int j = 0; j < dt.Columns.Count; j++)
{
//如果值不是最后一个则添加逗号分隔
if (j < dt.Columns.Count - 1)
{
sb.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + "/"" + dt.Rows[i][j].ToString() + "/",");
}
//如果值为最后个字符则不添加逗号
else if (j == dt.Columns.Count - 1)
{
sb.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + "/"" + dt.Rows[i][j].ToString() + "/"");
}
}
//如果为最后一个值的话 则不添加逗号
if (i == dt.Rows.Count - 1)
{
sb.Append("}");
}
else
{
sb.Append("},");
}
}
sb.Append("]");
return sb.ToString();
}
else { return null; }
}
名称:" + result[i].ProName + "
网址:" + result[i].url + "
"; datas += "项目名称:" + result[i].ProName + "
网址:" + result[i].url + "
"; } TINY.Box.show(datas,1); } });
网址:" + result[i].url + "
"; datas += "项目名称:" + result[i].ProName + "
网址:" + result[i].url + "
"; } TINY.Box.show(datas,1); } });
希望本文所述对大家jQuery程序设计有所帮助。