如何将jtable变量传递给CodeIgniter中的控制器

时间:2014-08-22 06:13:52

标签: php codeigniter jquery-jtable

我正在尝试在CodeIgniter中使用jquery-jtable,但是我在将变量bulantahun从view / ajax传递给controller时遇到了问题。这是我的代码。

//this is the ajax code 
$('#TableContainer').jtable({
                title: 'Absensi',
                paging: true,
                sorting: true,
                defaultSorting: 'bulanTahun ASC',
                selecting: true,
                multiselect: true, 
                selectingCheckboxes: true, 


                actions: {
                    listAction: base_url+'Absensi_controller/listRecord',
                    createAction: base_url+'Absensi_controller/create',
                    updateAction: base_url+'Absensi_controller/update',
                    deleteAction: base_url+'Absensi_controller/delete'
                },
// the field is here


$('#TableContainer').jtable('load',{
                    bulantahun:$("#from").val()
            });


//and this is my code in Controller
function create()
{
$bulantahun = $this->input->post('bulantahun'); //failed to post this value
//my code here
}

5 个答案:

答案 0 :(得分:0)

好像你没有从ajax发帖。所以我认为这是你的问题。你需要在你的jquery函数中做这样的事情:

    $.ajax({
      type: "POST",
      url: "Absensi_controller/create",
      data: bulantahun,
      success: success,
      dataType: String
    )};

答案 1 :(得分:0)

好的,我刚刚对他进行了一些调查。 您应该创建一个具有以下功能的控制器(您已经完成了一个: - )

    function listRecord(){

    }

    function create(){

    }  

    function update(){

    }

    function delete(){

    }

然后在javascipt部分:

    var base_url = "<?=base_url()?>"; // this line is the one that was missing in your code
    actions: {
                listAction: base_url+'Absensi_controller/listRecord',
                createAction: base_url+'Absensi_controller/create',
                updateAction: base_url+'Absensi_controller/update',
                deleteAction: base_url+'Absensi_controller/delete'
            }

我希望这会有所帮助......

答案 2 :(得分:0)

好的,你有没有试过var_dump post数组?像这样:

    function create()
    {
    var_dump($this->input->post());
    }

答案 3 :(得分:0)

你可以尝试的另一件事。检查您在javascript中构建的网址是否正确。

执行以下操作:alert(base_url +&#39; Absensi_controller / create&#39;);

同时检查您是否可以在浏览器中访问该网址。创建一个回声&#39;一些文字&#39 ;;确保....

答案 4 :(得分:0)

我得到了解决方案。我的错,我在回复json之后没有写出exit()函数。这是我在控制器的代码

function listRecort()
{
$this->load->model('model_superadmin');
$jtableResult = $this->model_superadmin->listRecord();
echo json_encode($jtableResult):
exit(); //I miss this function
}