如何在jquery中获取json数据数组?

时间:2016-02-25 10:15:28

标签: javascript jquery json

我在这里附上我的代码,请告诉我如何从 json 中获取值。 例如我希望得到pms_pro_amt的值,所以这将得到结果54。 这是我的 json 回复

    {"obj1": "{u'pms_pro_amt': '54', u'pms_client_cmpname': 'Tata Steels', u'pms_pro_priority': 'medium'
, u'pms_user_master_id': 0, u'pms_client_unique_id': 'c2', u'pms_pro_assign_id': '9', u'pms_pro_start_date'
: datetime.datetime(2016, 3, 1, 0, 0), u'pms_pro_status': 0, u'pms_category_id': 0, u'pms_pro_end_date'
: datetime.datetime(2016, 3, 2, 0, 0), u'pms_pro_desc': 'jhk', u'pms_client_name': 'Ratan Tata', u'pms_pro_id'
: 1, u'pms_pro_attachment': '', u'pms_pro_timespend': '', u'pms_pro_amt_type': 'hourly', u'pms_pro_name'
: 'hj', u'pms_pro_tech': 'Java', u'pms_client_master_id': '2'}", "obj2": "[{u'pms_dev_name': 'gaTes'
}]"}

现在我想将第一个值设置为我的文本框。这是我的jquery代码

 var id=$(this).attr("id");
    formdata = new FormData();
    formdata.append('id',id);
    $.ajax({
        url : '/view-project',
        data : formdata,
        type : 'post',
        contentType : false,
        cache : false,
        processData : false,
        success:function(data){
            if (data == 0){
                alert('No data Found');
            }
            else {

                $("#view_pro_client_cmpname").val(data['obj1']);
              }

我在数据变量中获得完整的 json 响应。现在,如何只从这个响应中获取一个键值,请帮助

2 个答案:

答案 0 :(得分:2)

看起来您的JSON无效。但你可以得到这样的价值观。

var data = {
  obj1: {
  	param1: 'hey',
        param2: 'you'
  },
  obj2: {
  	param1: 'is'
  }
}

//Show data like this
alert( data['obj1']['param1'] );
// Or like this
alert(data.obj1.param1);

答案 1 :(得分:0)

$.each($.parseJSON(data), function(key,value){
    alert(value.obj1);
});