如何从WCF服务中使用JSON

时间:2013-07-30 16:57:31

标签: javascript jquery json

我有一个连接到WCF服务的函数,然后应该将数据返回到网页。我的问题是,在收到服务的有效回复后,我无法“抓住”并操纵该数据。

function checkStatus(tempStatus, tempName, tempID, arrayLength){

var statusInText;
//alert('checkStatus function running');
$.getJSON('127.0.0.1'+ '/' + tempStatus, function(data){
    statusInText = data.GetStatesResult.State_Name
    alert('The status in Text value is ' + statusInText);
    placeCrewInArray(statusInText, tempName, tempID, arrayLength);      
});
}

我收到错误未捕获的TypeError:无法读取未定义的属性'State_Name'

返回的JSON类似于{"getStatesResult":[{"Reference":"Call,work,shift","State_Name":"Active ","id":1}]}

我不确定如何从返回的JSON中获取状态名称。谢谢你的帮助。

2 个答案:

答案 0 :(得分:3)

尝试抓住这样的数据:

statusInText = data.getStatesResult[0].State_Name

你有一个大写的“G”,当它的实际情况是“getStatesResult”时。然后它有一个对象数组,因此引用索引0,然后是State_Name

这是一个演示,您的JSON记录了您想要的结果:http://jsfiddle.net/nvkB6/

答案 1 :(得分:2)

您收到错误是因为JSON中的getStatesResult属性返回了一个对象数组,并且您正在引用一个不存在的对象属性。试试这个:

data.getStatesResult[0].State_Name