布局效果
布局代碼
<button type="button" class="btn btn-sm btn-danger btn-erbi-danger" id="batchDel" style="margin-right:20px;">批量刪除</button>
<tr>
<th><input id="checkAll" type="checkbox"></th>
<th>ID</th>
<th>所屬公司</th>
<th>姓名</th>
<th>性別</th>
<th>身份證號</th>
<th>手機號</th>
<th>住址</th>
<th>備注</th>
<th>標簽</th>
<th>創建時間</th>
<th>操作</th>
</tr>
<volist name="result" id="vo">
<tr data-id="{$vo.id}" data-table="company">
<td><input class="checkOne" type="checkbox" data-id="{$vo.id}"></td>
<td>{$vo.id}</td>
<td>{$vo.company_name}</td>
<td>{$vo.name}</td>
<td>{$vo.sex_str}</td>
<td>{$vo.id_card}</td>
<td>{$vo.telephone}</td>
<td>{$vo.address}</td>
<td>{$vo.remark}</td>
<td>{$vo.tag_str}</td>
<td>{$vo.create_time|date='Y-m-d H:i',###}</td>
<td>
<?php if (!$_SESSION['_admin_is_company']) { ?>
<a href="javascript:;" class="info_tag">標簽</a>
<?php }?>
<a href="javascript:;" data-id="{$vo.id}" class="info_edit">編輯</a>
<a href="javascript:;" data-id="{$vo.id}" class="info_del">刪除</a>
</td>
</tr>
</volist>
一個checkAll,一個checkOne。一個ID,一個Class。
增加全選反選事件
// 全選,反選
$("#checkAll").on('change', function () {
if ($(this).is(":checked")) { // 全選
$(".checkOne").prop("checked",true);
} else { // 反選
$(".checkOne").prop("checked",false);
}
});
增加刪除事件,獲取id
// 批量刪除
$("#batchDel").on('click', function () {
var ids = [];
// 獲取選中的id
$('tbody input.checkOne').each(function (index, el) {
if ($(this).prop('checked')) {
ids.push($(this).data('id'))
}
});
layer.confirm('確認要刪除嗎?' + ids.toString(), function (index) {
//捉到所有被選中的,發異步進行刪除
ajaxBatchDel(ids.toString());
});
});
// ajax批量刪除
function ajaxBatchDel(ids) {
// ajax設置不通過
$.ajax({
type: 'POST',
url: 'ajaxBatchDel',
data: {ids: ids},
dataType: 'json',
success: function (data) {
if (data.errno == 0) {
layer.msg('刪除成功', {icon: 1});
$(".checkOne:checked").parents('tr').remove();
} else {
layer.msg(data.errdesc, {icon: 5});
return false;
}
}
});
}
批量軟刪除
public function ajaxBatchDel() {
$ids = $_POST['ids'];
if (!$ids){
$this->json->setErr(10001,'請選擇要刪除的內容');
$this->json->Send();
}
$employee = M('employee');
$flag = $employee->where(['id'=>['in',$ids]])->save(['status'=>0]);
if($flag){
$this->json->setErr(0, '刪除成功');
$this->json->Send();
}else{
$this->json->setErr(10099, '刪除失敗');
$this->json->Send();
}
}