0

我正在使用 jQuery get 方法加载 html 的数据以存储到我的数组中,为此我使用此方法:

var temps = function(views){
    var tempts = [];
    $.each(views, function(i,view){
    if(view){
        tempts.push($.get("templates/" + view + ".html"), function(data){
        console.log(data);//i am not getting response text.. getting array object.
    })
}

})

当我控制数据时,我得到一个数组对象,如下所示:

[Object { readyState= 4,  responseText="<div id="login">\n  <form...eldset>\n   </form>\n</div>",  status=200,  more...}, function()]

这里有什么问题...如何直接获取响应文本..?

4

2 回答 2

1

看起来回调是在 $.get 调用之外定义的

尝试:

tempts.push($.get("templates/" + view + ".html", function(data){console.log(data);}));
于 2013-05-11T05:31:07.983 回答
1

在您的代码中,您实际上根本没有处理响应……您只是将 GET 请求发送到空气中。

为了处理响应,您需要将回调函数传递给$.get(称为“成功”回调,因为它是在请求成功返回时运行的函数):

$.get("templates/" + view + ".html", function(data) {
    //do something with data
});
于 2013-05-11T05:31:35.377 回答