我有一段可以从具有不同网址的各种网页执行的javascript。在这种情况下代码正常工作(这里的关键是url参数,其他任何东西都不会改变):
$.ajax({
type: "POST",
url: "./ajax/getPageTitle",
data: "pageID="+$("#pageToEdit").val(),
success: function(pageName){
$("#updatedPageName").val(pageName);
},
error: function(req,error){
if(error === 'error'){error = req.statusText;}
alert("There was an error: " + error);
}
});
当我尝试将url参数修改为类似的内容时:
$.ajax({
type: "POST",
url: BASE_URL+"ajax/getPageTitle",
data: "pageID="+$("#pageToEdit").val(),
success: function(pageName){
$("#updatedPageName").val(pageName);
},
error: function(req,error){
if(error === 'error'){error = req.statusText;}
alert("There was an error: " + error);
}
});
其中BASE_URL是常量,它会导致错误。似乎请求甚至没有被发送(当我尝试时在firebug中的控制台中没有404错误)并且错误消息只是说“错误”。
第一个工作正常,当它恰好位于url参数有意义的页面上时。知道为什么会这样,以及解决方案可能是什么?
提前致谢。
答案 0 :(得分:-1)
我已经解决了这个问题。该问题是由BASE_URL中包含域名引起的。以前的值是BASE_URL变量中的“http://www.mydomain.com/base/url/”。一旦我删除了“http://www.mydomain.com”就行了。所以我的BASE_URL变成了“/ base / url /".