Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax.begin结束错误(500(内部服务器错误)_Ajax_Asp.net Mvc_Twitter Bootstrap - Fatal编程技术网

Ajax.begin结束错误(500(内部服务器错误)

Ajax.begin结束错误(500(内部服务器错误),ajax,asp.net-mvc,twitter-bootstrap,Ajax,Asp.net Mvc,Twitter Bootstrap,我有个问题 我使用bootstrap modalpoup来删除元素。 单击delete时,使用Com坚定delete show的模式。如果单击submit按钮delete方法已完成,但在开发人员工具(chrome)显示错误(500(内部服务器错误))和阴影层没有隐藏的modalpopup中。我不确定创建方法的程度如何。当我更改Actions时,控制器将无效,方法delete()无返回值模态行为正常,但包含我的元素的表没有刷新。我在AjaxOptions中使用UpdateTargetId,但mod

我有个问题

我使用bootstrap modalpoup来删除元素。 单击delete时,使用Com坚定delete show的模式。如果单击submit按钮delete方法已完成,但在开发人员工具(chrome)显示错误(500(内部服务器错误))和阴影层没有隐藏的modalpopup中。我不确定创建方法的程度如何。当我更改Actions时,控制器将无效,方法delete()无返回值模态行为正常,但包含我的元素的表没有刷新。我在AjaxOptions中使用UpdateTargetId,但modalpopup中的阴影没有隐藏,UpdateTargetId呈现整个页面。我不知道应该返回什么控制器方法Delete()

控制器:

        [HttpPost]    
        public ActionResult Delete(int id)
        {
            _facade.Delete(id);
            return RedirectToAction("Index", _controllerName);
        }
视图:

@使用(Ajax.BeginForm(“Delete”、ViewData[“controllerName”].ToString(),新建
{
id=@Convert.ToInt32(ViewData[“RouteValue”])
},
新选择
{
HttpMethod=“POST”,
OnSuccess=“$('#删除元素id').modal('hide');”
}))
{
@Html.AntiForgeryToken()
}

你的POST方法毫无意义-它有
返回RedirectToAction()
但是你使用的是
Ajax.BeginForm()
,它永远不会重定向(Ajax的全部目的是保持在同一页面上。)如果我将Delete方法更改为返回void和Delete RedirectToAction()),页面上的元素没有刷新。我厌倦了使用UpdateTargetId,但后面的阴影我的模型没有hidde。我的删除方法应该是什么类型,它是否应该使用UpdateTargetId?还有什么解决方案?
   @using (Ajax.BeginForm("Delete", ViewData["controllerName"].ToString(), new
                {
                    id = @Convert.ToInt32(ViewData["routeValues"])
                },
new AjaxOptions
{
    HttpMethod = "POST",
    OnSuccess = "$('#delete-element-id').modal('hide');"
}))
                {
                    @Html.AntiForgeryToken()                         
                                <input type="submit" value="Delete" class="btn btn-danger" />


                }