如何在jQuery ajax调用中编写CodeIgniter控制器URL

时间:2016-12-30 17:29:54

标签: jquery ajax codeigniter

我在CodeIgniter中尝试ajax调用,但是如何在url中编写控制器及其函数名称。

$.ajax({              
     type : "POST",
     url  : "<?php echo base_uri(); ?>/application/controllers/controllerName/FunctionName",
});

这里我写的是整条路径,但似乎并不正确。 这样可以,还是有更好的方法?提前谢谢。

5 个答案:

答案 0 :(得分:2)

实际上,您应该可以这样称呼它:

$.ajax({

    type : "POST",
    url  : "/controllerName/FunctionName",

});

但这取决于你的url结构以及你是否在url结构中删除了index.php。在这种情况下,网址将为"/index.php/controllerName/FunctionName"

答案 1 :(得分:1)

在页面顶部写一些位置,例如在标题部分写下面的js代码。

注意:此代码应高于您的ajax方法

<script type="text/javascript">
    var base_url = "<?php echo base_url(); ?>";
    function site_url(url){
        var bu = "<?php echo base_url(); ?>";
        url = (url)?url:"";
        return bu + "index.php/" + url;
    }
</script>

然后你可以编写你的ajax方法如下:

$.ajax({
          type : "POST",
          url  : site_url("controllerName/FunctionName"),

   });

答案 2 :(得分:0)

像这样使用

url  : "<?php echo base_url(); ?>index.php/controllerName/FunctionName",

代码中的错误

url  : "<?php echo base_uri(); ?>/application/controllers/controllerName/FunctionName",
                          ^1           ^2         ^3
  1. 它应该是base_url而不是base_uri
  2. 和3. application文件夹不会在URL中使用。它是一个文件结构。不属于URL。

答案 3 :(得分:0)

android:inputType="textMultiLine"

OR

     $.ajax({
            type : "POST",
            url  : "<?php echo base_url(); ?>/controllerName/FunctionName"
      });

答案 4 :(得分:0)

它的工作正常,因为我还没有删除index.php。

$.ajax({
          url:"<?php echo base_url(); ?>index.php/ajax/hello",
          type:'post',
          data:{
                  "name":name,
                  "email":email,
                  "phone":phone
                },
	      		success:function(data){
	          $("#display").html(data);
	      }
        });