https://www.runoob.com/jquery/jquery-ajax-load.html
以这个链接为例,就第一个实例来说,两个问题,第一,我把load里面第一个参数demo_test.txt改成一个公网地址,就会出现提示,大致意思是说不同域,报错如下,请问下如果我url确实想用公网的地址,要怎么解决
第二个问题,我把这个demo_test.txt里面的内容拷贝下来,在本地新建了一个文件,和主文件同目录,但是调用的时候始终不能调用到demo_test.txt这个文件,写成../demo_test.txt这样也不行,必须新建一个文件夹(假如文件夹名为test),然后写成test/demo_test.txt这样才能调用,请问是为什么呢,请知道的告诉下谢谢了
你要理解相对路径与绝对路径
./ :代表文件所在的目录(可以省略不写)
../ :代表文件所在的父级目录
../../ :代表文件所在的父级目录的父级目录
/ :代表文件所在的根目录
以你的第二个问题举例:你创建了一个与例子一样的txt放在主目录,则,调用的路径为$("#div1").load("/123.txt")而不是$("#div1").lo*d("../123.txt")
然后第一个问题:你的“公网地址” = 你的文件链接 或 外链
直接填入完整链接即可
如:
$("#div1").load("h*tp://********/123.txt");
$("#div1").load("h*tp://*************/xxx/xxxx/xxxx/123.txt")以此类推的形式
第一个问题就是跨域的问题,跨域要求同源,直接获取是拿不到的
跨域支持
1. 服务端开启cors
2. jsonp方式:
原理时通过script标签加载 因为script标签无跨域问题,前提是要服务端支持。
3. 第二种代理模式
通过服务转发
你好,谢谢你的回答,第二个问题我清楚了,但是第一个问题,如果我直接填入一个外链,他还是会提示跨域问题,解决办法我查了下好像服务器端和客户端都要改,现在想问下有没有只改服务器端的方法,我要达到的效果大概是这样,比如一个页面加载好了,有个按钮,点击按钮,他能把某个公网地址里面的一些图片在这个页面显示出来