Jquery 本地Ajax调用成功,但未返回任何数据
我在Visual Studio 2010中创建了两个项目,一个是Web服务,另一个是Web应用程序,我在Web服务上有一个方法,如下所示:Jquery 本地Ajax调用成功,但未返回任何数据,jquery,ajax,json,Jquery,Ajax,Json,我在Visual Studio 2010中创建了两个项目,一个是Web服务,另一个是Web应用程序,我在Web服务上有一个方法,如下所示: `[OperationContract] [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "json/get
`[OperationContract]
[WebInvoke(Method = "GET",
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped,
UriTemplate = "json/getData")]
List<Objects> TestCall();`
我在FireFox中尝试,json变量返回为null,在IE调试器中调试时,我可以向对象添加一个手表,并可以看到对象下面有数组,我是否需要改用json.TestCallResult,或者是否有其他人看到IE和FireFox之间的这种差异,或者有人可以说停止作为noob并这样做
谢谢您的ajax url应该具有与html url相同的主机:端口。在成功回调中,您已经获得了一个json对象。如果您再次尝试使用$.parseJSON解析此内容,则结果为空 您需要查看
json.d
而不是json
响应数据包含在.d
属性中,而不是直接包含在返回的对象中
在ASP.NET 3.5及更高版本中会出现这种情况。$.ajax({
$.ajax({
url: "http://localhost:17258/RestService.svc/json/getData",
type: "GET",
dataType: "json",
cache: false,
success: function (obj) {
for (var i = 0; i <= obj.length; i++) {
alert(obj[i].id);
}
}
});
url:“http://localhost:17258/RestService.svc/json/getData",
键入:“获取”,
数据类型:“json”,
cache:false,
成功:功能(obj){
for(var i=0;i是您的网站(您从中调用Web服务的网站)也位于localhost:17258上,或者在端口17258上响应的服务器是否发送包含访问控制允许源设置的标头?当您在IE中调试时,哪个值具有json var?
$.ajax({
url: "http://localhost:17258/RestService.svc/json/getData",
type: "GET",
dataType: "json",
cache: false,
success: function (obj) {
for (var i = 0; i <= obj.length; i++) {
alert(obj[i].id);
}
}
});