2016-12-30 127 views
0

我正在嘗試CodeIgniter中的ajax調用,但是如何在url中編寫控制器及其函數名稱時感到困惑。如何在jQuery ajax中編寫CodeIgniter控制器URL調用

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

在這裏,我寫了整個路徑,但它似乎並不正確。 這是好的還是有更好的方法?提前致謝。

回答

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

OR

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

它的工作,謝謝老兄。 – Nadeem

2

其實,你應該能夠調用它像這樣:

$.ajax({ 

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

}); 

但是,這取決於一點點在你的URL結構,你是否沒有得到在URL結構擺脫index.php。在這種情況下,網址是"/index.php/controllerName/FunctionName"

0

使用就像在你的代碼

url : "<?php echo base_uri(); ?>/application/controllers/controllerName/FunctionName", 
          ^1   ^2   ^3 
  1. url : "<?php echo base_url(); ?>index.php/controllerName/FunctionName", 
    

    錯誤的應該是base_urlbase_uri

  2. 和3. application文件夾將不會在URL中使用。它是一個文件結構。不屬於URL。
+1

偉大@Abdulla Nilam酒店幾乎可以快速對大多數問題的迴應;) –

+0

@MuhammadUsman我沒有得到足夠的時間來聯機。只是大部分時間訪問;) –

1

頁面e.g頂部的標題部分下面的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"), 

    }); 
0

其工作正常,因爲我還沒有刪除的index.php直到尚未。

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

相關問題