2013-12-23 36 views
-1

我使用jQuery $.getJSON()工作,但它显示警报7.

$('#searchbtn').click(function() { 
    alert('hi'); 
    var kwd_name = $('#txtSearchFor').val(); 

    var url = "http://serviceidb.woo.gy/service/coresearch/?keyword=man"; 
    alert(url); 

    $.getJSON(url, function (data) { 
     alert('7'); 
     alert(JSON.stringify(data)); 
     $.each(data, function (index, d) { 
      alert(d.imageid); 
     }); 
    }).error(function (jqXHR, textStatus, errorThrown) { /* assign handler */ 
     alert(errorThrown.responseText); 
     $('#img_loading').css('display', 'none'); 
    }); 
}); 
+1

当我看到这个服务,看是否设置了CORS头文件,我得到了一个错误。检查浏览器开发人员工具的网络选项卡中会发生什么情况。 –

+0

如何启用跨域请求? –

+1

正确的URL是'http://serviceidb.woo.gy/service/coresearch?keyword = man',服务器似乎接受跨域请求。 –

回答

2

正确的URL是http://serviceidb.woo.gy/service/coresearch?keyword=man后的错误消息“未定义”(删除?/)。

但是你正在做一个跨域请求。

由于服务器没有设置相关的CORS headers,因此same origin policy会阻止您的JS代码读取响应。

阅读http://enable-cors.org/了解如何参数化服务器以允许跨域请求。

+0

现在,它的工作..谢谢 –