在Codeiginiter中使用Ajax删除Datatable中的字段,而无需刷新页面

时间:2018-11-03 04:12:36

标签: javascript php jquery codeigniter datatables

我想使用“ a”标签作为按钮删除数据表中的某些字段。如果按下该按钮,它将在不刷新页面的情况下使用ajax删除我数据库中的字段,但是如果我单击该按钮,它将不执行任何操作。我的JS或jQuery实力很弱,希望大家能帮帮我,谢谢。

这是我的JS

$('#delete-agenda').click(function(e) {
    e.preventDefault();
    var data = {};
    data['id_itenerary'] = $(this).attr('value');
    $.ajax({
        url: 'http://localhost/pandansari/admin/single_trip/delete_agenda',
        type: 'post',
        data: data
    });
});

这是我的“ a”标签

<a id="delete-agenda" class="btn btn-sm btn-danger" value="<?php echo $agenda['id_itenerary'] ?>">Delete</a>

这是我的控制器功能

public function delete_agenda() {
    $id_itenerary = $this->input->post('id_itenerary');
    $this->agenda_model->delete_agenda($id_itenerary);
}

这是我的模型功能

public function delete_agenda($id_itenerary) {
    $this->db->where('id_itenerary', $id_itenerary);
    $this->db->delete('tb_itenerary');
}

2 个答案:

答案 0 :(得分:0)

尝试一下

HTML:

<a id="delete-agenda" href="#" class="btn btn-sm btn-danger" data-id="<?php echo $agenda['id_itenerary'] ?>">Delete</a>

JS:

$(document).ready(function() {
    $('#delete-agenda').click(function(e){
        e.preventDefault();
        var id = $(this).attr('data-id');
        $.ajax({
            url: 'http://localhost/pandansari/admin/single_trip/delete_agenda',
            type: 'post',
            data: { 'id_itenerary' : id }
        });
    });
});

您仍然必须从表中删除数据表条目;否则,更改只会在刷新/重新加载时显示。

答案 1 :(得分:0)

$('#delete-agenda').on('submit',function(e){ 

e.preventDefault(); //在这里写下剩余的代码

});