【问题标题】:How to add delete function in jquery with php?如何使用 php 在 jquery 中添加删除功能?
【发布时间】:2018-08-06 20:23:41
【问题描述】:

我正在使用 codeigniter 编写一个 jquery 脚本。我在 for 循环中获取动态数据。我想在它上面添加crud操作。但我的视图和编辑工作正常。但不知道如何添加删除方法。

for(var j=0;j<arrayData.length;j++)
    {
          var country = "";
          var color = "";
          action1 = "VIEW";
          action2 = "EDIT";
          action3 = "DELETE";


            if(arrayData[j].key=="40")
             {
                 country = "UK";                              
                 color = "INDIANRED";
                 check+= '<a class="btn btn-success"  style="background-color : ' + color  + ';" href="<?php echo base_url()?>responsible/uk_pdf/'+arrayData[j].value+'">'+action1+
                              '</a> '+
                                '<a class="btn btn-success"  style="background-color : ' + color  + ';" href="<?php echo base_url()?>responsible/edit_slips_uk/'+arrayData[j].value+'">'+action2 +
                              '</a> ' + '<a class="btn btn-success"  data-toggle="modal" style="background-color : ' + color  + ';" href="<?php echo base_url()?>responsible/delete_slips_uk/'+arrayData[j].value+'">'+action3 +
                              '</a> | ';                                      

             }              

    }

arrayData[j].value 在这我得到了我的价值。responsible/delete_slips_uk 我正在调用这个方法来删除我的行。 控制器:

public function delete_slips_uk()
  {

    $this->load->model('pay_slips_model');
    $result=$this->pay_slips_model->delete_slips_uk($id);        
    if($result==true)
      {
        $this->session->set_flashdata('success_msg',"Deleted Successfully");
        redirect('responsible/view_slips_admin_1');
      }
    else
      {
        $this->session->set_flashdata('error_msg',"Customer Records Deletion Failed");
        redirect('responsible/view_slips_admin_1');
      }

  }

型号:

public function delete_slips_uk($id)
                {

                    $this->db->where('id', $id);                   
                    $this->db->delete('uk_new_salary_slip');
                    return ($this->db->affected_rows() != 1 ) ? false:true;
                }

我卡在删除功能上。 onclick 删除它转到我的方法它直接转到其他条件并显示此消息Customer Records Deletion Failed。我无法将我的arrayData[j].value 从 jquery 调用到我的控制器。请帮助我。所以我也可以设法完成我的删除操作。

【问题讨论】:

  • 使用 ajax 函数。
  • 尝试在 delete_slips_uk() 方法中对 $result 变量执行 print_r。

标签: php jquery mysql codeigniter


【解决方案1】:

$result=$this-&gt;pay_slips_model-&gt;delete_slips_uk($id); 期望 $id 但没有传递,导致 delete_slips_uk 总是返回 false。

修改控制器功能:

public function delete_slips_uk($id=null)
  {

    if (is_null($id)) {
        $this->session->set_flashdata('error_msg',"Missing id!");
        redirect('responsible/view_slips_admin_1');
    }

    $this->load->model('pay_slips_model');
    $result=$this->pay_slips_model->delete_slips_uk($id);        
    if($result==true)
      {
        $this->session->set_flashdata('success_msg',"Deleted Successfully");
        redirect('responsible/view_slips_admin_1');
      }
    else
      {
        $this->session->set_flashdata('error_msg',"Customer Records Deletion Failed");
        redirect('responsible/view_slips_admin_1');
      }

  }

【讨论】:

  • 没问题!将来您应该使用错误报告进行开发,因为它会给您一个变量丢失的通知。此外,一般故障排除建议您始终检查各个点的输入和输出;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多