能否发一个json的列子给我好吗
var kkk = '{ "Id":"1", "Name": "颜色" },{"Id": "148", "Name": "片"}';
var mmm = JSON.parse(kkk);
alert(tmp);
for (var A in mmm) {
alert(A);
alert("Id:" + mmm[A].Id + " Name:" + mmm[A].Name);
}
Id为定义 Name未定义
怎么回事啊
 json

解决方案 »

  1.   

    你的格式不对
    var kkk = '[{ "Id":"1", "Name": "颜色" },{"Id": "148", "Name": "片"}]';
    加上一对[]试下
      

  2.   

    恩 这位兄弟说的是。
    我还有一个问题。我从页面取得的数据和 kkk的数据是相同的。但是数据库里面的无法解析
    而kkk可以解析。
    Ext.Ajax.request({
                 url: "ExtjsProduct.aspx",
                 success: function (response) {
                     tmp = response.responseText;
                     var kkk = '[{"Id":"1", "Name": "颜色" },{"Id": "148", "Name": "片"}]';
                     var mmm = JSON.parse(tmp);
                     alert(mmm);
                     for (var A in tmp) {
                         alert(A);
                         alert("Id:" + tmp[A].Id + " Name:" + tmp[A].Name);
                     }
      

  3.   

    tmp 的数据类型是相同的。
      

  4.   

    没有反应。我的拼接字符串也没有问题啊 StringBuilder jsonString = new StringBuilder();
                jsonString.Append("'[");         
                
                var ArrList = CommonDbContext.ProductProperty.SqlQuery("select * from ProductPropertys").ToList();            for (int j = 0; j < ArrList.Count; j++)
                {
                    jsonString.Append("{");
                    string strKey = ArrList[j].Id.ToString();
                    string strValue = ArrList[j].Name.ToString();           
                    jsonString.Append("\"Id\":" + "\"" + strKey + "\",");
                    if (j < ArrList.Count)
                    {
                        jsonString.Append("\"Name\":" + "\"" + strValue + "\"");
                    }
                    else
                    {
                        jsonString.Append(strValue);
                    }
                    jsonString.Append("},");
                }
                jsonString.Remove(jsonString.Length - 1, 1);
            
                jsonString.Append("]'");                      Response.Write(jsonString.ToString());
      

  5.   

    我的问题是
    var kkk = '[{ "Id":"1", "Name": "颜色" },{"Id": "148", "Name": "片"}]';
    var mmm = JSON.parse(kkk);kkk和数据库里面取出来的数据是相同。为什么
    JSON.parse(数据库传过来的值);
    就报错。