我只是在学习JQuery并且在我的网站上成功运行了一些脚本。直到我知道JQuery for nitwits的书叫Ajax。我正在尝试这个非常简单的脚本
<div class="menu">
<script>
$(function(){
$('div').load('mytext.txt');
});
</script>
<div id="here"> </div>
</div>
我在JQuery工作正常的页面上试过这个,所以我知道我链接到google的工作。我尝试过像这样的几个小脚本,在任何情况下都无法让它们工作。 Mytext.txt与脚本的php文件位于同一目录中。为了使.load工作,你必须使用一些神奇的词吗?
我试过了
$('div#here').load('mytext.txt');
无济于事。特别值得注意的是,这是在一个codeigniter站点上,但这并不重要,因为我正在调用独立于控制器的ajax,并直接从视图中调用任何其他JQuery调用。
这应该是世界上最简单的事情。为什么我不能做任何事来让.load工作? 感谢
答案 0 :(得分:2)
尝试使用启用了Firebug的Firefox运行您的页面;并观察NET / HTTP流量。
我的猜测是存在相对路径问题;但Firebug应该为您提供更详细的信息,说明在请求mytext.txt时确切的错误。
答案 1 :(得分:1)
这应该按照你给出的方式工作 - 在这里看一个工作的jsfiddle:
我唯一能想到的就是检查文件的路径(也许它应该是/mytext.txt
,即前面有一个斜杠)。此外,您可以在浏览器中打开文件,即浏览到www.yoursite.com/mytext.txt
?
作为旁注,<script>
代码通常应转到HTML中的<head>
元素。
答案 2 :(得分:1)
以下代码段在我的Linux托管环境中正常运行。这两个文件(so.html和mytext.txt都位于文档根目录中。)我想知道如果不使用脚本标记指定“type”属性会导致一些问题。您还要确保同样限定div选择器:$('div#here')。load ...而不是$('div')。load ...
文件= /so.html
<!DOCTYPE html>
<html>
<head>
<title>Stackoverflow is Awesome</title>
<script
type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js">
</script>
</head>
<body>
<div class="menu">
<div id="here"></div>
</div>
<script type="text/javascript">
$(function(){
$('div#here').load('mytext.txt');
});
</script>
</body>
</html>
File = /mytext.txt
你好mytext.txt !!!!!