【问题标题】:Ajax not working codeigniterAjax 不工作
【发布时间】:2014-05-03 08:55:40
【问题描述】:

我有这个 javascript

$('a[name=deleteButton]').on('click', function () {
    arr=[];
    var arr = $("input[name='post[]']:checked").map(function() { 
            return this.value; 
          }).get();
          var content = $(this).parents('tr').find('.key').html();
    $.ajax({
   type: "POST",
   data: {arr:arr},
   url: "../deleteRowUsingApiKey",
   success: function(results){
     alert(data);
   }
});
});

在php中

这是我要发布值的 codeigniter 控制器

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
error_reporting(E_ALL);
ini_set('display_errors', 1);
class DeleteRowUsingApiKey extends CI_Controller
{
    function __construct()
    {
        parent::__construct();
    }

    function index()
    {
        // $this->load->model('deleteapi');
        // $this->deleteapi->deleteCheckout('CHECKvaPrfuRYzJa0MOUT');
        // echo "hi";
             echo $encrypted_data = $this->input->post('arr');

    }
}

ajax 位于视图中,php 位于控制器文件夹中,codeigniter 安装在文件夹 app 中。我无法在 javascript 中回显该值,请帮助

【问题讨论】:

  • 警报(数据);将数据更改为结果
  • 也改变 echo $encrypted_data = $this->input->post('arr');回显 $this->input->post('arr');

标签: javascript php jquery ajax codeigniter


【解决方案1】:

URL 可能是问题所在。

你需要在JS函数中给出absolute URL

url: "<?php echo base_url(); ?>/deleteRowUsingApiKey",

如果您的ajax functionJS 文件中,则需要在包含JS 之前定义base_url,例如:

<script>var base_url = '<?php echo base_url(); ?>';</script>
<script src="path/to/the/ajax.js">

现在,您可以访问ajax.js 中的base_url,例如:

url: base_url+"/deleteRowUsingApiKey",

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-10
    • 2013-10-29
    • 2015-05-15
    • 2016-07-17
    • 2014-05-07
    • 2013-11-17
    • 2013-08-04
    • 1970-01-01
    相关资源
    最近更新 更多