jQuery AJAX 中的 load,get 函数中第一个参数, url ,在 win 下能调用本地文件么?
比如和 html 文件同一个目录下的 txt 文件...
试过比如
$("#div1").load("test.txt");
但是没有 load 成功...
求解....
1
DT27 2016-06-15 13:32:02 +08:00
能,我测试成功了。
|
5
chairuosen 2016-06-15 14:57:55 +08:00 1
显然不能。。。。这是要发 http 请求的,除非你本地有个 server 接着,然后 server 转发文件。
|
6
freeminder 2016-06-15 14:58:35 +08:00
@chairuosen 活捉
|
7
sensui7 2016-06-15 15:03:41 +08:00
不行, ajax 只能不能操作本地的, 特别是 chrome, 已经禁止本地请求了.
|
8
hxsf 2016-06-15 15:05:34 +08:00 via Android
不能操作 file://的
|
9
xjtlujoe OP @chairuosen pc 上弄个 wamp 可以将本地文件弄个 url 链接么?
|
10
hujian201231 2016-06-15 15:24:31 +08:00 via Android
我记得 firefox 是可以的,其实你起一个本地服务器就可以正常测试了。
|
11
chairuosen 2016-06-15 15:24:39 +08:00
@xjtlujoe 直接一个 nginx ,绑个域名到某个目录,就可以通过请求访问那个目录的文件了
|
12
xjtlujoe OP @chairuosen 用 apache 应该也可以,有个 serveralias 方法可用。。不过试了网上的案例,没啥用。。。于是找了个 url ( http://www.runoob.com//try/ajax/demo_test.txt ),在 load 函数中调用这个 url ,也不行。。。 chrome 说是 No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
|
13
chairuosen 2016-06-15 16:24:01 +08:00
@xjtlujoe 返回头加上 Access-Control-Allow-Origin : * 就行
|
14
learnshare 2016-06-15 16:48:17 +08:00
开一个本地服务器,就可以发送 Ajax 了
|
15
learnshare 2016-06-15 16:49:13 +08:00
@learnshare 当然,貌似 IE (当年用的是 9 ?)可以直接打开 file ,然后发 Ajax
|
16
xjtlujoe OP 用 chrome 装了个 Access-Control-Allow-Origin 插件,就可以访问本地文件了。。。查了一下,这个问题是浏览器的“同源策略”问题。。。 jsonp 也可以实现类似功能。。 http://blog.csdn.net/xiaoxian8023/article/details/27817861
http://www.jianshu.com/p/4e17445d66e2 |