Ajax发布到CodeIgniter控制器不起作用

时间:2016-07-07 11:15:21

标签: javascript jquery ajax codeigniter

我试图将一些数据发布到CodeIgniter控制器,但它只显示空数组。我也在使用DataTables。我不确定我是否以正确的方式发送数据。这是我的代码:

JS

$("#prw").on('click', function(e){
    e.preventDefault();

    var url = window.location.origin + "/nsl/preview";

    $.ajax({
        url: url,
        data: $("input[type='checkbox']:checked").serialize()
    }).done(function(data){
        console.log("Response", data);
    });
});

CONTROLLER

function preview() {
    $post = $this->input->post();
    return $post;
}

HTML

<table id="offers" class="table table-striped table-bordered" cellspacing="0" width="100%">
        <thead>
        <tr>
            <th>...</th>
            <th>...</th>
            <th>...</th>
            <th>...</th>
            <th>...</th>
        </tr>
        </thead>
        <tfoot>
        <tr>
            <th>...</th>
            <th>...</th>
            <th>...</th>
            <th>...</th>
            <th>...</th>
        </tr>
        </tfoot>
        <tbody>
        <?php foreach($data as $d): ?>
        <tr>
            <td><input type="checkbox" id="check" name="myCheckboxes[]" class="toggle" value="<?=$d->oid?>"></td>
            <td><input type="text" id="rb" name="myText[]" class="toggle"></td>
            <td><?=$d->fullname?></td>
            <td><?=$d->published?></td>
            <td><?=$d->expires?></td>
        </tr>
        <?php endforeach; ?>
        </tbody>
    </table>
    <input type="submit" id="prw" class="btn btn-info" value="Preview">

请感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

要检查的事项: -

  1. 在ajax调用中,提及type : 'post'

  2. 点击功能,试试

    alert($(“input [type ='checkbox']:checked”)。serialize());

    并检查您是否按预期获得了值?

  3. 打开Firebug,单击控制台,执行单击按钮,查看控制台内URL的POST选项卡下的所有值。

  4. 控制器内部

    $ post = $ this-&gt; input-&gt; post('myCheckboxes'); 的print_r($交);