Javascript 非常简单的Ajax问题
我正在学习JQuery,并且有一些脚本在我的站点上成功运行。直到我了解到jqueryfornitwits的书中称之为Ajax的东西。我正在尝试做这个非常简单的脚本Javascript 非常简单的Ajax问题,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在学习JQuery,并且有一些脚本在我的站点上成功运行。直到我了解到jqueryfornitwits的书中称之为Ajax的东西。我正在尝试做这个非常简单的脚本 <div class="menu"> <script> $(function(){ $('div').load('mytext.txt'); }); </script> <div id="here"> </div> </div> 无济于事。需要特别注意的是,这
<div class="menu">
<script>
$(function(){
$('div').load('mytext.txt');
});
</script>
<div id="here"> </div>
</div>
无济于事。需要特别注意的是,这是在codeigniter站点上,但这并不重要,因为我调用ajax独立于控制器,与其他JQuery调用一样,直接从视图调用ajax
这应该是世界上最简单的事情。为什么我不能做任何事情去工作?
谢谢尝试使用Firefox运行您的页面,并启用Firebug;并观察NET/HTTP流量
我的猜测是,存在一个相对路径问题;但是Firebug应该向您提供更多详细信息,说明请求mytext.txt时的确切错误是什么。这应该按照您提供的思路进行操作-请参阅此处的工作JSFIDLE:
/mytext.txt
,即前面有一条斜线)。此外,您能否从浏览器中打开该文件,即浏览到www.yoursite.com/mytext.txt
作为旁注,
标记通常应该转到HTML中的
元素。以下代码片段在我的Linux托管环境中正常工作。这两个文件(so.html和mytext.txt都位于文档根目录中。)我想知道不使用脚本标记指定“type”属性是否会导致一些问题。您还需要确保限定div选择器:$('div#here')。加载。。。相对于$('div')。加载
File=/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>
Stackoverflow太棒了
$(函数(){
$('div#here').load('mytext.txt');
});
File=/mytext.txt
您好,来自mytext.txt 你能从浏览器中访问mytext.txt吗?我将尝试使用php include来获取它。我得到的消息是$(函数未定义,并且没有调用mytext.txt文件。我正在使用“确定”获取未找到的mytext.txt。让我移动它around@brad,这当然是一个路径问题。浏览器处理相对路径的方式不同(grrr)。要确认这一点,请首先尝试文本文件的绝对url(根“/serverroot/path/To/text.txt”)。解决方法是使用根路径(解决方案不好,不可移植,使部署变得复杂),或者找出为什么您的相对路径在所有浏览器中的工作方式都不相同(需要发布目录结构)或者使用js浏览器嗅探黑客调整url(闻起来像一周前的金枪鱼罐头)天空我找到了它,因为某种原因它无法识别文件在同一个目录中。所以我将它从codeigniter目录移到根目录,它工作得很好。这只是我的第一次(也是最后一次)努力使用ajax。你是对的,它与路径有关。我相信代码是好的。但是Chrome和firefox firebug告诉我文件找不到。还有firefox告诉我$document ready没有定义。我将处理文件位置并将文件重命名为html文件。因为这是codigniter,我想我需要找到它We’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’弄清楚这有什么关系。感谢你们大家,你们是伟大的人,很高兴能提供帮助!无论如何,如果只是路径,那么,根据您的设置,您应该能够使用整个路径(使用文件的旧位置)获得它例如,如果文件位于
public\u html/a/b/c/mytext.txt
,您应该能够使用/a/b/c/mytext.txt
访问它(您可以在浏览器中进行检查)。
<!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>