0

我正在尝试通过$.get()函数获取 HTML 页面的内容。此页面在其文件名中包含特殊字符+

mypage+v1.html

这是我尝试获取内容的方式:

$.get("mypage+v1.html", function(data){
    alert(data);
});

此代码在本地工作并运行良好,它可以正确检索内容。一旦我将它移动到 Web 服务器,它就会停止工作,并且 ajax 调用返回404 Not found错误。

我尝试在脚本和文件名中都用_替换+并且它可以工作,但我需要保留加号..我尝试使用encodeURI()

$.get(encodeURI("mypage+v1.html"), function(data){
    alert(data);
});

并手动替换+%2B

var url = "mypage+v1.html".replace("+", "%2B");
$.get(url , function(data){
    alert(data);
});

但它没有成功..

使用

$.get(encodeURIComponent("mypage+v1.html"), function(data){
    alert(data);
});

引发以下错误:

GET http://.../mypage%2Bv1.html 404 (not found)

即使使用编码的网址,它也不起作用。


旁注:我正在成功检索其他页面

$.load("pagename.html #divToAppendTo", function(res, stat, xhr){
    ....
});

我需要使用$.get,因为在将这些切片附加到原始 HTML 文件的不同部分之前,我需要对文件内容进行操作和切片。我测试了$.load()调用,它使用Request 方法: GET,这样我知道该文件夹是可访问的..

还有什么想法吗?

谢谢

4

0 回答 0