如何使用javascript

时间:2015-08-13 10:42:17

标签: php json

以下是我使用php脚本生成的json对象

$to_encode[]= mysql_fetch_assoc($result);
echo json_encode($to_encode);

,输出

[{"wid":"2","repid":"1"}]

提取widrepid的值我在js中给出的代码下面使用了

var obj = JSON.parse(data);

var a = obj.["wid"];
var b = obj.["repid"];

但我获得ab的价值为undefined而不是21

3 个答案:

答案 0 :(得分:0)

您的json对象实际上是一个对象数组(在这种情况下,只有一个对象:var obj = data[0] //access the first element of the json array var a = obj.wid; var b = obj.repid;)。

这应该有效

long id;
IGenericQueryRepository<myentityclass, Entityname> InfoBase = null;
try
 {
    InfoBase = new GenericQueryRepository<myentityclass, Entityname>();
    InfoBase.Add(generalinfo);
    InfoBase.Context.SaveChanges();
    id = entityclassobj.ID;
    return id;
 }

答案 1 :(得分:0)

看起来您的JSON不仅编码一个对象,而且编码包含一个对象的数组。但是该数组没有widrepid属性,只有数组中的对象有!

尝试

  • {"wid":"2","repid":"1"}只对一个对象进行编码而不将其放入数组

  • obj[0]["wid"]访问数组中第一个(也是唯一的)对象的属性。

顺便说一下,如果您知道属性的名称,则应使用点表示法:obj[0].wid而不是obj[0]["wid"]

答案 2 :(得分:-1)

尝试使用obj[wid]。数组以wid为键,2为值。