Codeigniter base_url()对ajax无法正常工作

use*_*321 2 php ajax jquery codeigniter

在ajax中使用base_url()来获取codeigniter项目中的from数据库.鉴于base_url就像http://domainname.com.它工作正常.如果我可以在地址栏中输入我的网址http://www.domainname.com,那就不行了.代码是

$.ajax
 ({
    type: "POST",
    url: base_url+'autocomplete/get_caste_list',
    data: {religion:$('#religion').val(),'csrf_test_name': csrf_value},
     cache: false,
     success: function(html)
        {
       $("#caste").html(html);
        } 
   });
Run Code Online (Sandbox Code Playgroud)

请帮忙解决这个问题.谢谢

Ari*_*lam 5

在我看来,最好的解决方案是:

只需在HTML的标题部分添加以下脚本即可.

<script type="text/javascript">
    var BASE_URL = "<?php echo base_url();?>";
</script>
Run Code Online (Sandbox Code Playgroud)

然后在您的Ajax代码中BASE_URL用作变量.手段:

$.ajax
({
    type: "POST",
    url: BASE_URL+'autocomplete/get_caste_list',
    data: {religion:$('#religion').val(),'csrf_test_name': csrf_value},
    cache: false,
    success: function(html)
    {
        $("#caste").html(html);
    } 
});
Run Code Online (Sandbox Code Playgroud)

使用您的基本网址如下:

$config['base_url'] = "http://{$_SERVER['HTTP_HOST']}/";
Run Code Online (Sandbox Code Playgroud)

很简单的解决方案