0

这不是我第一次使用$.get功能,但这次我不知道为什么它不起作用

function test(tid)
  {
    alert("1");
   var ttt;
   alert("2");
   var ddd;
    alert("3");

   $.get("demo_ajax_load.txt", function(result){
    alert("4");
     });
   }

demo_ajax_load.txt只是一个文本文件内容是:Welcome

我收到警报 1、2、3,但没有显示第 4 条警报消息。一切看起来都很正常,这个简单的功能有什么问题?

谢谢

4

2 回答 2

1

只要您不在本地对其进行测试,它就可能没有任何问题。

如果您使用的是Google Chrome (我使用的是 20 版),请打开控制台(按F12),您会看到会收到错误消息:

Access-Control-Allow-Origin 不允许 Origin null。

在此处输入图像描述

Mozilla Firefox中,你会得到

[对象 XMLDocument]

但是如果您远程执行此操作(在您的主机中),一切都会正常工作......

您可以查看我的Live DEMO并打开控制台查看输出(如果您愿意)。

我的简单 jQuery:

$.when(
    $.get("a.txt")
  )
 .done(function(data) { 
    console.log("All done: " + data); 
    $(".txt-from-file").text(data); 
  })
 .fail(function(data) { 
    console.log("Error found: " + data.statusText); 
    $(".txt-from-file").text(data.statusText); 
  });

或者您总是可以简化更多并使用:

$.get("a.txt").then(
    function() { alert("succeeded"); },
    function() { alert("failed!"); }
);
于 2012-07-04T22:01:42.237 回答
0

好的,感谢您的帮助,我找到了解决方案,我应该使用 jQuery 而不是 $ ,它有效

于 2012-07-04T22:53:27.453 回答