json是一种轻量级数据交换格式,简单的json格式为[{"key1":"value1"},{"key2":"value2"}],
[]代表数组,{}代表数组中的数据对象,key1,key2是一个json对象中的key,一个json中key值唯一,value1,value2,是key键对应的值。
下面使用jquery解析简单的son文件。
这里是songs.json文件内容
[ {"optionKey":"1", "optionValue":"Canon in D"}, {"optionKey":"2", "optionValue":"Wind Song"}, {"optionKey":"3", "optionValue":"Wings"} ]
Html代码:
<div>点击按钮获取JSON数据</div> <input type="button" id="button" value="确定" /> <div id="result"></div>
使用Ajax获取JSON数据的jQuery代码:
$(document).ready(function(){ $(‘#button‘).click(function(){ $.ajax({ type:"GET", url:"songs.json", dataType:"json", success:function(data){ var song="<ul>"; //i表示在data中的索引位置,n表示包含的信息的对象 $.each(data,function(i,n){ //获取对象中属性为optionsValue的值 song+="<li>"+n["optionValue"]+"</li>"; }); song+="</ul>"; $(‘#result‘).append(song); } }); return false; }); });
因为前台jquery不接受显示DataTable对象;--- 复用性不大,所以有必要先把datable转换成json数据格式
public static string ToJson(DataTable Adt) { StringBuilder jsonString = new StringBuilder(); jsonString.Append("["); foreach (DataRow pdr in Adt.Rows) { jsonString.Append("{"); jsonString.AppendFormat("\"name\":\"{0}\",\"value\":\"{1}\"", pdr["SmallClassName"].ToString(), pdr["SmallClassName"].ToString()); jsonString.Append("},"); } jsonString.Remove(jsonString.Length - 1, 1); jsonString.Append("]"); return jsonString.ToString(); }