Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax 我有一个问题,当按钮删除已点击,但数据不能删除和url不显示id_Ajax_Codeigniter_Crud - Fatal编程技术网

Ajax 我有一个问题,当按钮删除已点击,但数据不能删除和url不显示id

Ajax 我有一个问题,当按钮删除已点击,但数据不能删除和url不显示id,ajax,codeigniter,crud,Ajax,Codeigniter,Crud,我已经试着解决这个问题好几个小时了,但我从来没有解决过这个问题 我的代码有一个问题,当我从json中单击delete按钮时,我无法从控制台获取ID just链接,如下所示: 例如: 发生了:请求 我想要这样:request/?id=1 我粘贴了一些代码来检查: 控制器request.php: public function delete() { // $this->m_request->delete($this->input->post('id_form'))

我已经试着解决这个问题好几个小时了,但我从来没有解决过这个问题

我的代码有一个问题,当我从json中单击delete按钮时,我无法从控制台获取ID just链接,如下所示:

例如:

  • 发生了:
    请求
  • 我想要这样:
    request/?id=1
我粘贴了一些代码来检查:

控制器
request.php

public function delete()
{
    // $this->m_request->delete($this->input->post('id_form'));
    $id = $this->input->post('id_form');
    $data = $this->m_request->DeleteRequest($id);
    echo json_encode($data);
}
public function DeleteRequest($id)
{
    $hasil = $this->db->query("DELETE FROM request WHERE id_form='$id'");
    return $hasil;
}
Model
m_request.php

public function delete()
{
    // $this->m_request->delete($this->input->post('id_form'));
    $id = $this->input->post('id_form');
    $data = $this->m_request->DeleteRequest($id);
    echo json_encode($data);
}
public function DeleteRequest($id)
{
    $hasil = $this->db->query("DELETE FROM request WHERE id_form='$id'");
    return $hasil;
}
然后查看(我只放了模态脚本和ajax json脚本):

模态视图:

<div class="modal fade" id="ModalHapus" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
    <div class="modal-content">
        <div class="modal-header">
            <h4 class="modal-title" id="myModalLabel">Hapus Request</h4>
            <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">X</span></button>
        </div>
        <form class="form-horizontal">
            <div class="modal-body">

                <input type="hidden" name="kode" id="textkode" value="">
                <div class="alert alert-warning">
                    <p>Apakah Anda yakin mau menghapus request ini?</p>
                </div>

            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">Tutup</button>
                <button class="btn_hapus btn btn-danger" id="btn_hapus">Hapus</button>
            </div>
        </form>
    </div>
</div>

海布斯请求
X
你有什么要求

图图普 哈布斯

Ajax/JSON脚本:

 //GET HAPUS
    $(document).on('click', '.hapus', function() {
        var id = $(this).attr('data');
        $('#ModalHapus').modal('show');
        $('[name="kode"]').val(id);
    })

    // Hapus Request
    $('#btn_hapus').on('click',function(e){
        e.preventDefault();
        var id = $('textkode').val();
        $.ajax({
            type: "POST",
            url: "<?= site_url('request/delete')?>",
            dataType: "JSON",
            data: {id:id},
            success: function(data){
                // $('#ModalHapus').modal('hide');
                console.log(data)
                load_data();
            }
        });
        return false;
    })
//获取HAPUS
$(文档).on('click','hapus',function(){
var id=$(this.attr('data');
$('ModalHapus').modal('show');
$('[name=“kode”]').val(id);
})
//海布斯请求
$('btn_hapus')。on('click',函数(e){
e、 预防默认值();
var id=$('textkode').val();
$.ajax({
类型:“POST”,
url:“”,
数据类型:“JSON”,
数据:{id:id},
成功:功能(数据){
//$('ModalHapus').modal('hide');
console.log(数据)
加载_数据();
}
});
返回false;
})

ajax请求可能无法工作的原因有很多。我想到的第一件事是,您没有指定输入表单的ID和方法。确保在HTML表单标记中都有这两个标记。例如:

<form id=“id_form” method=“post” class=“...”>
...
    <input type="text" name="kode" id="textkode">
</form>
注意,我更改了函数名。这可能会对其他程序员产生误导,因为delete在许多编程语言中用作动态对象的析构函数


此外,我建议创建一个ajax.php文件来解析不同类型的ajax请求。该文件也可以用作控制器,但仅用于ajax调用。如果您有多个表单,则代码更具可读性。

您的
模式
将在单击“删除”按钮时显示,以及您在
控制台.log(数据)中获得的内容
点击我的
模式
中的delete按钮,我在
console.log(数据)中得到
true
,但数据未被删除它包含的id是什么
var id=$('textkode').val()
警报(id)更改此
var id=$('textkode').val()
to
var id=$('#textkode').val()如果控制台显示了什么,那么请求似乎起作用了。它返回“true”的原因可能是SQL查询只将true返回给$data变量,该变量随后发送给客户端。问题是,您想要返回到客户端的是什么?如果您只想通知客户一个表行正在删除,这就足够了。那么我该怎么办?…我希望您能帮助我解决这个问题我编辑了我的答案,根据它更改了您的代码,并请提供您的Webbrowser控制台日志的输出!,您可以检查该链接,因为在该链接中,您可以从Web浏览器中的
console.log
查看结果