JS jQuery AJAX的问题

时间:2010-10-27 13:38:53

标签: javascript jquery ajax

我的代码有问题。

function fnFormatDetails ( oTable, nTr )
{
    var aData = oTable.fnGetData( nTr );
    var sOut = "";

    var ajax = $.ajax({
        url: "/wemi/mediaplaner/show?id="+aData[1],
        success:    function(data)  {
            //return data; 
            //return sOut = data;
            //console.log(sOut);
        },
        error:  function()  {
            //alert("Error");
        }
    });

    //document.write(ajax.responseText); //write empty Text
    console.log(ajax); //Real Object all is OK

    //console.log(ajax.responseText); get empty Text
    //alert(ajax.responseText); // get Empty Text
    return sOut;
}

我只需要打印ajaxed文本......正如你所看到的那样,我只会得到一个无限制或空洞的回应。

但如果我在成功功能中打印或提醒,一切都很好,我得到了我的回复......

1 个答案:

答案 0 :(得分:4)

你已经发现了答案。 ajax调用是异步。当HTTP请求完成时,将执行“success”处理程序中的代码。但是,$.ajax函数本身在启动请求后立即返回。

正确的方法是将代码置于“成功”回调中。 (或者把呼叫转到那里的其他功能。)

相关问题