Javascript JSON对象已返回,但无法通过$.ajax()访问
我有一个ASP.NET MVC Web API,我正在通过$.ajax()方法调用它。我的API返回了正确的JSON,但无法访问该对象。尝试记录“Name”的值时,在我的控制台中收到的错误是: 未捕获的TypeError:无法读取未定义的属性“Name” JSON: jQuery:Javascript JSON对象已返回,但无法通过$.ajax()访问,javascript,ajax,json,jquery,Javascript,Ajax,Json,Jquery,我有一个ASP.NET MVC Web API,我正在通过$.ajax()方法调用它。我的API返回了正确的JSON,但无法访问该对象。尝试记录“Name”的值时,在我的控制台中收到的错误是: 未捕获的TypeError:无法读取未定义的属性“Name” JSON: jQuery: $.ajax({ cache:false, type: 'GET', dataType: 'json', url: 'h
$.ajax({
cache:false,
type: 'GET',
dataType: 'json',
url: 'http://localhost:3235/Users/searchUsers?callback=?&searchString=' + searchString,
complete: function (data) {
console.log(data[0].Name);
}
});
任何帮助都将不胜感激。谢谢 我想你的意思是使用
success
功能。complete
函数没有将数据
作为参数。我想您的意思是使用success
函数。complete
函数不将数据作为参数。来自:
完成
类型:函数(jqXHR jqXHR,字符串文本状态)
函数
在请求完成时调用(在成功和错误之后
执行回调)。函数被传递两个参数:
jqXHR(在jquery1.4.x中,XMLHTTPRequest)对象和字符串
对请求的状态进行分类(“成功”、“未修改”,
“错误”、“超时”、“中止”或“解析器错误”)
方法的第一个参数不是接收到的数据。您可以通过jqXHR
对象获得它,但我认为您实际上不需要使用此选项。改用success
:
成功
类型:函数(纯对象数据,字符串textStatus,jqXHR jqXHR)
如果请求
成功。函数传递三个参数:返回的数据
来自服务器,根据数据类型参数格式化;A.
描述状态的字符串;和jqXHR(在jquery1.4.x中,
XMLHttpRequest)对象
发件人:
完成
类型:函数(jqXHR jqXHR,字符串文本状态)
函数
在请求完成时调用(在成功和错误之后
执行回调)。函数被传递两个参数:
jqXHR(在jquery1.4.x中,XMLHTTPRequest)对象和字符串
对请求的状态进行分类(“成功”、“未修改”,
“错误”、“超时”、“中止”或“解析器错误”)
方法的第一个参数不是接收到的数据。您可以通过jqXHR
对象获得它,但我认为您实际上不需要使用此选项。改用success
:
成功
类型:函数(纯对象数据,字符串textStatus,jqXHR jqXHR)
如果请求
成功。函数传递三个参数:返回的数据
来自服务器,根据数据类型参数格式化;A.
描述状态的字符串;和jqXHR(在jquery1.4.x中,
XMLHttpRequest)对象
ya complete在发出服务调用后激发,并且它不包含来自服务响应的数据
使用
happy codingya complete在发出服务呼叫后触发,它不包含来自服务响应的数据
使用
快乐编码尝试记录数据
是什么。如果您只需控制台,您可以显示什么日志。记录(数据)
以查看返回的内容,而不仅仅是知道名称
不在那里。您可能返回的结果是内容类型
为文本/html
。JS中的JSON.stringify(result)
,或者发送正确的头和响应。即使头是错误的,他是否指定它是JSON也无关紧要。当您包含数据类型:“JSON”时,jQuery会自动为您解析它
正如上面代码中所做的那样。尝试记录数据是什么。如果您只需控制台,您可以显示什么日志。log(data)
查看返回的内容,而不仅仅是知道名称不在那里,您可能返回的结果是内容类型文本/html
。JS中的JSON.stringify(result)
,或者发送正确的头和响应。即使头是错误的,他是否指定它是JSON也无关紧要。当您包含dataType:“JSON”
时,jQuery会自动为您解析它,就像上面代码中所做的那样。我不敢相信我也没有注意到:P+1。我也不敢相信。我在想斜视解决了这个问题:D@Ejay:是的,我完全错过了那条船。甚至没有考虑回调类型。虽然我想知道Yatrix回答中的问题是否也会起作用。成功并没有起作用,但它神奇地再次起作用。很高兴知道“完整”不需要数据。谢谢大家!我不敢相信我也没有注意到:P+1。我也不敢相信。我在想斜视解决了这个问题:D@Ejay:是的,我完全错过了那条船。甚至没有考虑回调类型。虽然我想知道Yatrix回答中的问题是否也会起作用。成功并没有起作用,但它神奇地再次起作用。很高兴知道“完整”不需要数据。谢谢大家!
$.ajax({
cache:false,
type: 'GET',
dataType: 'json',
url: 'http://localhost:3235/Users/searchUsers?callback=?&searchString=' + searchString,
complete: function (data) {
console.log(data[0].Name);
}
});
$.ajax({
url:'ur url',
type:'GET'
success:function(data){
// way to acces ur object code goes here
console.log(data[0].Name);
},
error:function(){
// Error handling
}
});