如何使用CodeIgniter进行x-editable?

时间:2015-11-22 21:54:08

标签: codeigniter x-editable

我想了解在我的CodeIgniter第一个项目中使用x-editable。我尝试阅读x-editable docs,但我也是JavaScript的初学者,所以我无法理解

我使用简单的控制器从JavaScript收集数据,但我没有完成它或数据库中没有更新的数据。

$('#username').editable({
    type: 'text',
    pk: 1,
    url: '/post',
    title: 'Enter username'
});

如何在控制器或模型中提交数据以处理数据库更新查询

我想将从x-editable提交的数据传递给模型,以便在数据库中更新它。

1 个答案:

答案 0 :(得分:1)

首先,这个问题是关于AJAXJavaScript/jQuery,而不是Codeigniter

基本上,您编写的代码是关于使用AJAX发布数据。首先,您需要创建一个控制器和模型,然后您可以使用AJAX发布数据。我正在添加示例代码:

控制器文件:

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Sample extends CI_Controller {

   function __construct() {
        parent::__construct();
        $this ->load ->model('modelfolder/sample_model');   
   }

   public function index() {
      $this->sample_model->sampleFunction();
   }
}

模型文件:

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Sample_model extends CI_Model {

   function sampleFunction() {
      $data = array('fieldName' => $this->input->post('userName', TRUE));
      $this->db->where('id', $this->input->post('userId', TRUE));
      $this->db->update('tableName', $data);
      return true;
   }
}

routes.php文件:

$route['demoPost'] = 'controller_folder/sample';

查看文件的HTML部分:

<form id="sampleForm">
 <input type="text" name="userId" />
 <input type="text" name="userName" />
</form>

查看文件的AJAX部分:

$(document).ready(function(){
      $("#sampleForm").submit(    
        function(){ 
         $.ajax({
          type: "POST",
          url: "<?php echo site_url('demoPost'); ?>",
          data: $("#sampleForm").serialize(),
         });
      });
   });