【JQuery Ajax问题】Ajax调试一直不成功,都好几天了还是不成功,求解惑
在学习jQuery中的Ajax中,发现调试$().load()这一个api的时候一直不成功,尝试过用tomcat和wampserver作为本地服务器都不成功。其中尝试某度尝试寻找解答的方法,但一直无果。所以想请求技术大牛们为小弟解答。最好能分析调试失败的原因,在此感激不尽~~~
调试的代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html"> <meta charset="utf-8"> <title>Document</title> <script src="JQ311.js"></script> </head> <body> <p>deafre</p> <div id="tte"></div> <script type="text/javascript"> $(function(){ $("#tte").load("/test/1.txt") }) </script> </body> </html>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(23)
第一个, 本地load怎么会跨域呢, 第二个, 如果jsonp的话, 回调格式有要求, 自行百度, jsonp 就是返回一个js文件, 需要调用js里面的方法
到目前为止,用load的方法不能解决这个问题。后来找了一下百度,说因为是跨域安全问题,所以只能用ajax的方法,,但是用ajax的方法遇到parsererror问题了,,parsererror的问题每个人的说法都不一,我肯定我的json是非常标准的。贴上代码,求OS的高手指教,
load不是一个本地的api吧,是一个跨域的ajax
这里面有值?
$().load(url, [data, callback]),data和callback都是可选的,,问题是url后DOM没反应啊(┬_┬)
JQ311.JS能够正确被执行的,我尝试过用alert()来测试JQ能正确执行
JQuery api --> load
url,[data,[callback]]String,Map/String,CallbackV1.0
url:待装入 HTML 网页网址。
data:发送至服务器的 key/value 数据。在jQuery 1.3中也可以接受一个字符串了。
callback:载入成功时回调函数。
是不是xx.html与JQ311.js不在同一个目录下
$().load(url,callback),这个load执行url后,在对应的DOM处应该有变化的,但是DOM没有任何的变化。回调是后续的问题了。目前的主要问题是相应的DOM没有载入内容
回复
network preview中有数据?
想怎样调试成功?加回调函数?
那麻烦您给我解答一下这是什么问题。。。怎么解决。。谢谢。。 身边确实没有做软件的朋友,,,所以求开源的大神们
这个问题居然好几天了,刚入行吧,身边没有搞软件的吗?问一下,1分钟就解决了
下面的图里面截图了,网络那里有发起请求的。应该是请求成功的,就是不知道为什么不显示在DOM上面
回复
用 $("#tte").load("/test/1.txt?" + Date.now()) 看看
看看控制台的网络面板, 有没有发起请求, 有没有正确返回
在tomcat虚拟本地服务器的情况下:http://127.0.0.1:8080/test/1.txt是可以直接展示文件的,就算用wampServer也是能够用http://localhost/test/1.txt展示文件的内容。
$.load(),里面加载的内容应该不限定是html文件吧,可以是json类或txt类的吧?而且我也尝试过用html文件加载还是不行
回复
那你F12,看看控制台报什么错
回复
@sxgkwei : 控制台没有任何的报错,,这才是不知道问题的所在啊(┬_┬)
如果我没有理解错误的话,load 不是load文件,而是load一个 tomcat 可解析的地址。哪怕这个地址是一个文件,那也得连接到服务器上去地址映射去转一圈,才会到对应的文件上,然后文件形成数据量再反馈给客户端。
而你的后缀是txt,这似乎明明就不对。
或者。在你的根网址上,直接写 /test/1.txt 能在浏览器里面打开么?比如浏览器地址栏输入:http://127.0.0.1:8080/test/1.txt 能返回出文件下载提示,或者直接展现出 txt内容吗?
尝试用过360浏览器自带的developer tool和edge的调试工具都是一样的结果
Chrome Developer Tools 或者 Fiddler 抓包看看