var templateLink = envVars.rootTemplateFolder + $(this).attr('link');
console.log("templateLink : ", templateLink);
$.ajax({
method: "GET",
url: templateLink,
context: this,
success : function(result){
var theHtml = result.toString();
$(this).replaceWith(theHtml);
}
templateLink应该=" resources / spa /templates/header.html"并根据控制台日志。
但我总是得到404" 资源/水疗/资源/水疗中心 /templates/header.html"
我可以取出变量并只传递基本字符串" resources / spa / templates / header.html" 而且,我仍然得到重复。
如果只是将它保留为" /templates/header.html" ;,那么它就不会重复" resources / spa"当然,字符串的其余部分不存在现在。因此,这表明传递给AJAX调用的对象正在被解析和更改。
如何阻止这种情况?我很困惑为什么这样做。
有什么想法吗?
答案 0 :(得分:1)
没有得到解析或更改。问题是你没有考虑到ajax将它添加到你所在的路径位置的路径。所以,如果你是http://yoursite/resources/spa/templates/header.html并且你的别名是例如,Apache是http://yoursite/resources/spa/,基本路径被添加到您的ajax字符串中。这可能就是问题所在。
浏览器的实际路径,并删除公共部分。