function getHtmlBodyFromFile( filename ){
    var outStr = '';
    $.get(filename, function(data, status) {
        outStr = $('body', $(data)).html();
    });
    return outStr;
}
$("div#detail").html( getHtmlBodyFromFile('OEBPS/text/section0002.xhtml') ); //blank


return outStr为空白,因为函数在调用$ .get()之后立即返回
您能否建议我一种更好的方法来返回那些非阻塞样式的有效数据。
非常感谢

最佳答案

不必期望从getHtmlBodyFromFile函数返回数据,而是将回调函数传递给getHtmlBodyFromFile,该回调函数应在ajax调用之后执行。

像这样:

function getHtmlBodyFromFile( filename, callback ){
    var outStr = '';
    $.get(filename, function(data, status) {
        outStr = $('body', $(data)).html();
                callback(outStr)
    });
    //return outStr;
}
getHtmlBodyFromFile('OEBPS/text/section0002.xhtml', function(data) {
    $("div#detail").html(data);
});

09-18 18:24