jquery和ajax返回错误

时间:2012-06-22 14:46:55

标签: jquery ajax

我在jQuery中的ajax调用不起作用。这是jsfiddle:http://jsfiddle.net/jefffabiny/czZKM/

我的page2.html文件很简单:

<p>page 2</p>

有没有人看到这个问题?所有错误都是'错误'。

修改 我的jquery位于我的根目录的子文件夹中。 [我的根文件夹(我的索引所在的位置)]&gt;&gt; [my js文件夹(我的jquery所在的位置)]。因此,'../'语法应该是正确的,以便在文件结构中上升一级。我想,哈哈。

5 个答案:

答案 0 :(得分:1)

导致错误是因为找不到page2.html。

getContent('../page2.html');

这条线是杯子。

我认为路径不正确。

对于jsFiddle,您需要提供绝对路径(http://www.example.com/page2.html)

答案 1 :(得分:0)

您的路径可能不存在。看一下FireBug网络选项卡或Chrome,看看你是否得到了404.我还建议你使用内置的jQuery函数来完成你正在寻找的非常简洁的内容:

<p class="test"><a href="#">I will load text on click.</a></p>
<div class="contentArea">test</div>

<script type="text/javascript">
$('.contentArea').load('../page2.html');
</script>

答案 2 :(得分:0)

尝试像下面一样调用getContent:

getContent('/page2.html');

它将假定该文件位于根目录中。

答案 3 :(得分:0)

OP:不要过于陷入同源政策和jsFiddle问题。

检查呼叫是否在本地运行。以下代码将起作用(显然将C:\替换为您的本地驱动器或根文件夹):

C:\test\page2.html
C:\test\subdir\test.js
C:\test\subdir\test.html

page2.html

<p>page 2 content</p>

test.js:

$.ajax({ url: '../page2.html',  
         success: function(resp) { $('body').append(resp); } 
});

的test.html:

<html>
<body></body>
</html>

test.html(在AJAX调用之后):

<html>
<body><p>page 2 content</p></body>
</html>

答案 4 :(得分:-1)

ajax调用不能引用相对路径(即'../'),它必须是绝对的(即'http://localhost/page2.html')。