Я нашел ответы на другие вопросы, но не смог заставить его работать.
Я добавил приятное предупреждение 2, которое срабатывает при нажатии кнопки удаления. Но модал закрыт, прежде чем я даже выберу.
Я попытался добавить e.preventDefault (), но мне не повезло.
Я использую sweetalert2 и laravel-5.8.
Это форма для удалениякнопка в edit.blade.php
<form>
@method('DELETE')
@csrf
<div class="field">
<div class="control" style=" margin-top: 10px">
<button class="btn btn-danger" onclick="deleteConfirmation({{$posts->id}})">Delete</button>
</div>
</div>
</form>
<script type="text/javascript">
e.preventDefault();
function deleteConfirmation(id) {
swal({
title: "Delete?",
text: "Please ensure and then confirm!",
type: "warning",
showCancelButton: !0,
confirmButtonText: "Yes, delete it!",
cancelButtonText: "No, cancel!",
reverseButtons: !0
}).then(function (e) {
if (e.value === true) {
var CSRF_TOKEN = $('meta[name="csrf-token"]').attr('content');
$.ajax({
type: 'POST',
url: "{{url('/delete')}}/" + id,
data: {_token: CSRF_TOKEN},
dataType: 'JSON',
success: function (results) {
if (results.success === true) {
swal("Done!", results.message, "success");
} else {
swal("Error!", results.message, "error");
}
}
});
}
});
}
</script>
В моем контроллере сообщений у меня есть это для функции удаления
public function destroy($id)
{
Post::findOrFail($id)->delete();
return redirect('/posts');
}
И в сети php
Route::post('delete/{id}', 'PostsController@delete');
В настоящее время я получаю модал, который закрывается до того, как я получу какой-либо выбор, и не удаляет «Пост»