问题描述
我有一个问题,不幸的是我看不到错误。问题如下。我创建了 Delete 方法并在点击按钮时在 AJAX
中调用该方法。
但是当我进入索引页面并尝试删除项目时,我只收到我的 swall aller 显示的错误消息。
error: function (data) {
swal("Oops","Something went wrong!","error");
}
到目前为止,我在控制器中创建了 Delete Action
[HttpPost,ActionName("Delete")]
[ValidateAntiForgeryToken]
public ActionResult DeleteConfirmed(int id)
{
Language language = db.Languages.Find(id);
db.Languages.Remove(language);
db.SaveChanges();
return RedirectToAction(nameof(Index));
}
在我的 Index Page
中,我创建了这个:
<div class="panel panel-flat">
<div class="panel-body">
<table class="table datatable-responsive datatable-languages">
<thead>
<tr class="bg-blue">
<th>
Language Name
</th>
<th>
Country Code (Flag)
</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr id="tr-id-@item.language_id">
<td>
@Html.displayFor(modelItem => item.name)
</td>
<td>
@Html.displayFor(modelItem => item.code)
</td>
<td>
<ul class="icons-list text-left">
<li class="text-primary-600"><a href="~/Languages/Edit?Id=@item.language_id"><i class="icon-pencil7"></i></a></li>
<li class="text-danger-600"><a class="delete_languages" href="javascript:;" data-id="@item.language_id"><i class="icon-trash"></i></a></li>
</ul>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
还有我的 AJAX 调用
<script>
$('.datatable-languages').DataTable({
dom: 'Bfrtip',columnDefs: [
{
responsivePriority: 1,targets: -1
},{
targets: [-1],orderable: false,searchable: false,printable: false,width: "120"
}
]
});
$(document).on('click','.delete_languages',function () {
var myId = $(this).attr('data-id');
console.log(myId);
var parent = $(this).parent().parent().parent().parent();
swal({
title: "Are you sure?",type: "warning",showCancelButton: true,confirmButtonColor: "#FF7043",confirmButtonText: "Yes,delete it!",cloSEOnConfirm: false,showLoaderOnConfirm: true,},function () {
$.ajax({
type: "post",url: "/Languages/Delete",data: { id: myId },success: function () {
parent.fadeOut('slow',function () { $(this).remove(); $('.child').remove() });
setTimeout(function () { swal("Deleted!","Record deleted successfully!","success"); },2000);
},error: function (data) {
swal("Oops","error");
}
});
})
});
</script>
之前的一个符号,我尝试删除 AJAX 调用,并在我的索引页面中添加了这行代码,并且它有效
<td>
@Html.ActionLink("Edit","Edit",new { id = item.BlogId }) <br />
@Html.ActionLink("Details","Details",new { id = item.BlogId }) <br />
@Html.ActionLink("Delete","Delete",new { id = item.BlogId })
</td>
任何人都可以帮助我并告诉我哪里出错了,因为我找不到,也不知道从哪里开始寻找。一切看起来都不错,但项目无法删除,在控制台中我收到错误消息
内部服务器错误 (500)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)