【问题标题】:jquery getScript data [closed]jquery getScript数据[关闭]
【发布时间】:2013-02-07 07:59:12
【问题描述】:
<script>
$.getScript("javascriptfile.js", function(data ){


   alert("Script loaded and executed."+data);


});
</script>

数据返回未定义。我想获取 javascriptfile.js 的响应数据或内容

下面测试不工作

$.getScript("http://code.jquery.com/jquery-1.9.1.min.js", function(data){


   alert("Script loaded and executed."+data);


});

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    有问题

    //This one will NOT work
    $.getScript("http://jquerymobile.com/branches/popup-widget/js/", 
            function (data) {
                   alert("Script loaded and executed." + data);
    });
    
    //This one will work
    $.getScript("js/jquery.min.js", 
            function (data) {
                   alert("Script loaded and executed." + data);
    });
    

    如果您在域外发出跨域请求,$.getScript() 不会提供脚本文件的内容。

    【讨论】:

    • 这让我非常心痛!赞成
    【解决方案2】:

    请运行此程序并回复异常消息,以便我可以跟进您:

    $.getScript("javascriptfile.js")
    .done(function(script, textStatus) {
        alert(textStatus);
    })
    .fail(function(jqxhr, settings, exception) {
        alert(exception);
    });
    

    【讨论】:

    • 我不想要文本状态,我想要整个响应(响应的全部内容)
    • @Liew,我发布了最新代码。结果未定义
    • 这只是示例。在调用它之前已经在
    【解决方案3】:

    我不知道你为什么想要文件的内容,因为 getScript 在加载它之后执行它并且回调只是一个回调,如果需要调用函数/插件/你刚刚加载的任何内容; 如果您想要文件的内容,请改为$.get,但无论如何

    do 
    function(data, textStatus, jqxhr) {
        console.log(data); //data returned
        console.log(textStatus); //success
        console.log(jqxhr.status); //200
        console.log('Load was performed.');
      });
    

    发现“问题”(来自http://api.jquery.com/jQuery.getScript/

    【讨论】:

    • 不起作用。我在发帖之前已经试过了
    • 我没有写它会起作用,但它会缩小问题范围,粘贴您的控制台结果(实际上我使用 .done 和给定链接中提供的缓存脚本示例;如果有任何错误一个错字/不正确的网址...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多