我试图通过向服务器发送get请求来从服务器获取json数组。当我运行下面的代码时,服务器收到请求。如何打印服务器发回的数据?第二个警报()没有显示。
$(document).ready(function(){
alert("READyS");
$("button").click(function(){
$.getJSON("http://localhost:8080/Data/", function (data) {
alert("data recieved");
});
});
});
答案 0 :(得分:0)
由于您使用的是jQuery,因此可以使用:
$("button").click(function(){
$.get( "http://localhost:8080/Data/" )
.done(function( data ) {
alert( "Data Loaded: " + data );
});
});
视角:请详细说明是什么按钮。
如果仍然无法正常工作,请将您的HTML粘贴到此处
答案 1 :(得分:0)
您可以使用传递给AJAX请求成功状态的回调函数。这样您就可以使用请求的异步特性,在等待请求的数据并且您将结果打印到页面时,它不会阻止浏览器调用堆栈。这只是一个p
元素,其中包含所有请求的信息,因此如果它只是一个字符串,它将起作用。如果它是一个对象数组或类似的东西,那么您可以在其中创建一个map
函数,其中包含printData
函数,以循环遍历所有下载的对象。
function printData(passedData) {
jQuery('<p/>', {
id: 'foo',
text: passedData
}).appendTo('body');
}
function testAjax(handleData) {
$.ajax({
url:"http://localhost:8080/Data/",
success:function(data) {
handleData(data);
}
});
}
testAjax(printData);