猿问

Thinkphp使用ajax的时候,有时候使用相对地址是报错,是什么原因?

比如:

var root=window.location.origin;

$.post(root+"/"+url,data,function(d){    console.log(d);  if(d.status==1){
    location.reload();
  }
})

比如上面这段代码,其中url已经在前面用U方法获取了相对地址。
如果我在post的时候,直接使用url就会返回整个页面,
添加了root后,就可以正常使用。

有遇到过相似情况的吗?

而且只是在有些地方会这样,一般情况不会出现这样的。

本页面使用了百度编辑器,会有什么影响吗?

补充说明:
上面可能表达得不太清楚,我添加了root后的请求地址是:root+"/"+url,
没有添加的时候请求的是:url (这时我并没有在前面加"/").

url的地址是用Thinkphp的U方法在本页面获取的,当然是可以直接访问,正确的地址;所以我才会有这样疑问。


慕姐4208626
浏览 711回答 1
1回答

拉风的咖菲猫

/是根地址,直接用/说明从域名+/+url来访问,如果你访问的地下刚好是根地址就不会错,同样也会出现找不到的问题;你使用window.location.origin说明你使用了相对地址,你请求的url刚好在window.location.origin这个相对地址下所以才正确的;你最好把你的AJAX请求路径都从根目录开始,写全路径,这个问题本身和tp没什么关系,是你自己对请求地址的理解不正确。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答