如何让Firebug告诉我jquery的.load()返回了什么错误?

时间:2010-04-29 05:03:26

标签: javascript jquery debugging load firebug

我正在尝试找出jquery的.load()方法在以下代码中返回的数据/错误(#content元素为空,因此我假设存在某种错误)。

  1. 我在Firebug中找到哪些内容或错误.load()正在返回?
  2. 如何使用console.log查找至少要返回的内容?
  3. alt text http://www.deviantsart.com/upload/ksqe5b.png

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <script type="text/javascript"
            src="http://www.google.com/jsapi"></script>
            <script type="text/javascript">
                google.load("jquery", "1.3.2");
                google.setOnLoadCallback(function() {
                    $('#loadButton').click(loadDataFromExernalWebsite);
                });
                function loadDataFromExernalWebsite() {
                    console.log("test");
                    $('#content').load('http://www.tanguay.info/web/getdata/index.php?url=http://www.tanguay.info/knowsite/data.txt', function() {
           alert('Load was performed.');
        });
                }
            </script>
        </head>
    <body>
        <p>Click the button to load content:</p>
        <p id="content"></p>
        <input id="loadButton" type="button" value="load content"/>
    </body>
    </html>
    

4 个答案:

答案 0 :(得分:3)

Firebug的'Net'标签应该显示所有HTTP请求(包括来自其他域的任何HTTP请求)

答案 1 :(得分:1)

没有错误。由于XMLHttpRequest的SOO(同源策略),因为您从远程主机(与您的应用程序不同的域)请求。 XMLHttpRequest将不返回任何内容。

但是如果将.load回调方法签名修改为function(response, status, xhr) {...},则返回的数据将在response中。但在你的情况下,那里什么都没有。

答案 2 :(得分:1)

我建议您安装firequery,您可以轻松检测到jquery问题。

答案 3 :(得分:1)

尝试

$("#content").load("http://www.tanguay.info/web/getdata/index.php?url=http://www.tanguay.info/knowsite/data.txt", function(response, status, xhr) {
  if (status == "error") {
    console.log("Error code :" + xhr.status); // error code
    console.log ("Error text :" + xhr.statusText); // error text
  }
});