Ajax响应如何访问

时间:2014-04-04 04:21:19

标签: javascript jquery ajax x-editable

我从ajax得到了这个回应

{
  "laborCostIndex":0.0,
  "laborDailyWage":0.0,
  "laborHourlyWage":0.0,
  "laborMonthlyWage":0.0,
  "laborLeave":0.0,
  "laborBonus":0.0,
  "laborSSS":0.0,
  "laborPagIbig":0.0,
  "laborPhilHealth":0.0,
  "laborEMP":0.0,
  "laborTotalMonthlyRate":110.0,
  "laborTotalDailyRate":4.230769230769231,
  "laborTotalHourlyRate":0.5288461538461539
}

我正试图通过以下方式访问内部元素:

response.laborCostIndexresponse['laborCostIndex']但似乎对我不起作用。

ajax来自xeditable,这里是代码:

更新:发布了整个ajax

$('.laborCostIndex').editable({
    pk: '1',
    name: 'laborCostIndex',
    url: '../BTool/edit_laborCostIndex.do',
    validate: function( value ) {
        if($.trim( value ) == '') {
            return 'This field is required';
        } else if( isNaN( value ) ) {
                return 'Only accepts numbers';
        }
    },
    params: function(params) {
        var basicDailyWage = $(this).closest('td').next('td').find('a').text();
        var pagIbig = $(this).closest('tr').find(':nth-child(11)').find('a').text();
        var emp = $(this).closest('tr').find(':nth-child(13)').find('a').text();
        var datas = new Array(basicDailyWage, pagIbig, emp);

        params.pk = datas;
        return params;
    }, 
    success: function(response, newValue) {
        console.log( response );
        console.log( response.laborCostIndex );
        console.log( response['laborCostIndex'] );
    } 
});

两个结果都未定义,我不知道为什么。

1 个答案:

答案 0 :(得分:1)

在您的成功功能中尝试此功能

 var obj = JSON.parse(response);
 console.log( obj.laborCostIndex);