【问题标题】:How to call a codeigniter function in ajax?如何在ajax中调用codeigniter函数?
【发布时间】:2017-09-14 08:46:42
【问题描述】:

在控制器中,我有一个 _remap() 用于路由。

我的控制器如下:

public function _remap($id)
{
    $this->index();
}
public function index()
{
    $this->accesscontrol->can_or_redirect('view', 'translation');
    $this->output->view('translation/language');    
}
function process(Request $request){
       // if(Response::ajax()) return "OK";
        return json_encode(array('ok'));
}

我的看法如下:

$('#lang_choice1').each(function() {
     $('#src_trans_lang').val($("#lang_choice1 option:selected").val());
     var msg = $(this).val();

     $.ajax({
           type: "POST",
           url: '<?=site_url('translation/language/process')?>',
           data: msg,
           success: function(data){ }
     });
     return false;
});

我试图在 ajax 中调用函数进程并且它没有被调用。我如何需要修改 _remap 函数来调用 ajax 调用?

【问题讨论】:

  • 控制器名称?
  • 正确描述你的问题
  • 控制器名称是 language.php 并且在翻译目录中..我正在尝试使用 ajax 在视图中调用此控制器中的进程函数。
  • 你想调用哪个函数?过程?
  • 是..过程函数

标签: javascript php jquery ajax codeigniter


【解决方案1】:

试试这个

脚本部分

$('#lang_choice1').each(function () {
      $('#src_trans_lang').val($("#lang_choice1 option:selected").val());
      var msg = $(this).val();

      $.ajax({
        type: "POST",
        url: '<?= site_url('language/process') ?>',
        data: {"msg":msg},
        dataType:"json",
        success: function (data) {
          console.log(data);

        }

      });

      return false;
    });

控制器进程函数

function process() {
    $data = $this->input->post();
    $result['status'] = "ok";
    $result['response'] = $data;
    echo json_encode(array($result));
    exit(0);
  }

在控制台中检查响应

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    • 1970-01-01
    • 1970-01-01
    • 2021-06-29
    • 1970-01-01
    • 2014-04-05
    • 2021-08-13
    相关资源
    最近更新 更多