本文實例講述了Laravel框架實現的批量刪除功能。分享給大家供大家參考,具體如下:
1、HTML的內容
tr>
th>input type="checkbox" class="checkbox-inline" onclick="checkAll(this)">/th> // 用來全選
/tr>
/thead>
tbody>
@foreach ($keys as $key)
tr>
td>input type="checkbox" class="ck checkbox-inline" name="item[]" value="{{ $key->id }}">/td> // 復選框
/tr>
@endforeach
a style="font-size: 15px;" id="delAll" type="button" class="btn btn-primary" onclick="delKeys()">批量刪除/a>
/tbody>
2、js的內容
// 全選
var ck = $('.ck');
function checkAll(qx)
{
if (qx.checked) {
for (var i=0; ick.length; i++) { // 實現全選
ck[i].setAttribute("checked", "checked");
}
} else {
for (var i=0; ick.length; i++) { // 取消全選
ck[i].removeAttribute("checked");
}
}
}
// 批量刪除
function delKeys()
{
var items = [];
for (var i=0; ick.length; i++) {
if (ck[i].checked) {
items.push(ck[i].value); // 將id都放進數組
}
}
if (items == null || items.length == 0) // 當沒選的時候,不做任何操作
{
return false;
}
layer.confirm('您確定要刪除我們嗎?', {
btn: ['確定', '取消'],
}, function() {
$.post("{{ url('key/delAll') }}", {
"_token": "{{ csrf_token() }}",
"keys": items
}, function(data) {
if (data.status == 0) {
layer.msg(data.msg, { icon: 6});
location.href = location.href;
} else {
layer.msg(data.msg, { icon: 5});
}
});
}, function() {});
3、控制器中的內容
public function delAll(Request $request)
{
for ($i=0; $icount($request['keys']); $i++) {
$res = Key::where('id', $request['keys'][$i])->update(['isDelete' => 1]); // 遍歷刪除
}
if ($res) {
$data = [
'status' => 0,
'msg' => '刪除成功'
];
} else {
$data = [
'status' => 1,
'msg' => '刪除失敗'
];
}
return $data;
}
更多關于Laravel相關內容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優秀開發框架總結》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。
您可能感興趣的文章:- Laravel 批量更新多條數據的示例
- laravel實現批量更新多條記錄的方法示例
- Laravel中批量賦值Mass-Assignment的真正含義詳解
- Laravel框架學習筆記之批量更新數據功能
- laravel批量生成假數據的方法
- Laravel向公共模板賦值方法總結
- Laravel 實現Controller向blade前臺模板賦值的四種方式小結
- Laravel5.1數據庫連接、創建數據庫、創建model及創建控制器的方法
- Laravel5.1框架注冊中間件的三種場景詳解
- laravel5.1框架model類查詢的實現方法
- laravel5.1框架下的批量賦值實現方法分析