我正在使用codeigniter和jquery ajax。我在我的应用程序本地使用wamp(完美运行)和我部署的应用程序(不是那么多)有一些不和。一旦可能的建议修复是将ajax相对路径转换为ajax的绝对路径,所以它看起来像:
url: "YOURBASEPATH/AjaxController/update",
location.href = "YOURBASEPATH/pan_controller/my_detail";
现在我的代码:
$.ajax({a
type: "POST",
url: "AjaxController/update",
data:{ i : searchIDs, m : message },
dataType: 'json',
.done(function() {
alert("REFRESHING..");
location.href = "pan_controller/my_detail";
});
}
})
我已经使用https://philsturgeon.uk/blog/2009/09/Asset-handling-in-CodeIgniter-with-the-BASE-tag一段时间了。这与基本网址硬编码相同吗?如果不是,我该如何做到这一点,而不会弄乱其他路线和部署能力,这是相对路线的优势。
答案 0 :(得分:2)
在标题部分中,只需添加以下脚本。
<script type="text/javascript">
var BASE_URL = "<?php echo base_url();?>";
</script>
然后在您的Ajax代码中使用BASE_URL
作为变量。意思是:
url: BASE_URL+"AjaxController/update",
location.href = BASE_URL+"pan_controller/my_detail";
$.ajax({a
type: "POST",
url: BASE_URL+"AjaxController/update",
data:{ i : searchIDs, m : message },
dataType: 'json',
.done(function() {
alert("REFRESHING..");
location.href = BASE_URL+"pan_controller/my_detail";
});
}
})
非常简单的解决方案。