繁体   English   中英

Codeigniter中的Javascript删除确认框

[英]Javascript delete confirmation box in codeigniter

首先,我已经尝试过该站点中所有可能的答案,但是没有任何工作对我有用。

我想在删除我的数据之前显示弹出窗口确认。 我用这个

 <a href="<?php echo site_url('admin/barang/delete/'.$val->idBarang);?>" onclick="return confirm('Are you sure ?')">Delete</a>

也许你需要我的控制器

public function delete($id = 0) {
    $id OR redirect(site_url('admin/barang'));

    $this->barang_m->delete($id);

    redirect(site_url('admin/barang'));
}

我的模特barang_m

public function __construct(){
    parent::__construct();
    parent::set_table('barang','idBarang');
}
public function delete($id = 0) {
    if($data = parent::get($id)) {
        parent::delete($id);
        return true;
    }
    return false;
}

但是,当我单击“取消”时,即使单击“ x”关闭确认窗口,它仍会删除数据。 我很沮丧,请帮助我。 或者,您可以告诉我为什么会出现此问题?

**我阿拉迪尝试过这个可能的答案
Codeigniter,当我单击“删除”时,如果要单击“是”或“否”,我想弹出通知
jQuery删除确认框
确认框在CodeIgniter锚链接中以删除记录等等

当您按取消时,您需要停止页面打开链接。 但是从代码中可以看出,它看起来像您错过了检查条件。 试试这个可能会解决您的问题。

<a href="<?php echo site_url('admin/barang/delete/'.$val->idBarang);?>" onclick="isconfirm();">Delete</a>

<script>
function isconfirm(){

if(!confirm('Are you sure ?')){
event.preventDefault();
return;
}
return true;
}
</script>

尝试

<a href="javascript:;" onclick="return isconfirm('<?php echo site_url("admin/barang/delete/".$val->idBarang); ?>');">Delete</a>

和你这样的功能

function isconfirm(url_val){
    alert(url_val);
    if(confirm('Are you sure ?') == false)
    {
        return false;
    }
    else
    {
        location.href=url_val;
    }
}

您也可以尝试

<a href="<?php echo site_url("admin/barang/delete/".$val->idBarang); ?>" class="confirmClick">Delete</a>

而js将是

$('.confirmClick').click(()=> {
  var sure = confirm('Are you sure ?');
  if(sure){
    return true;
  }
  return false;
})

这是因为您正在用按钮本身运行它并返回它。 就是说,删除按钮并返回确认。

可能删除返回将起作用,或者创建一个函数并确保它不返回它,但是将所需的内容放入变量或其他内容中。

<a href="javascript:;" onclick="return confirm_Action('<?php echo base_url(); ?>index.php/admin/delete_department/<?php echo $dept['Dept_id']; ?>');" ><button> DELETE</button></a>

然后,您的功能confirm_Action可能像这样:

//THis Allows Me To Control The Delete Actions
function confirm_Action(url){
// alert(url);
if(confirm('Are You Sure, This Action Can\'t Be Reversed?') == false)
{
    return false;
}
else
{
    location.href=url;
}

}

就像@M一样。 迪帕克做到了...

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM