Asp.net mvc 4 在mvc3/4中显示动作后警报

Asp.net mvc 4 在mvc3/4中显示动作后警报,asp.net-mvc-4,asp.net-ajax,alert,Asp.net Mvc 4,Asp.net Ajax,Alert,我需要通知用户点击操作的成功/失败。在视图中,我已经准备好了操作链接,该链接指向控制器,执行数据库操作并返回结果。然后我想用消息“完成”或“失败”来显示警报。一切都应该在不重新加载页面的情况下完成。我试图定义@Ajax.ActionLink和text/javascript函数,但它根本不起作用。。。请帮忙。提前谢谢 Robert首先,您应该包括脚本:jquery和jquery.unobtrusive-ajax-like: <head> ... <script s

我需要通知用户点击操作的成功/失败。在视图中,我已经准备好了操作链接,该链接指向控制器,执行数据库操作并返回结果。然后我想用消息“完成”或“失败”来显示警报。一切都应该在不重新加载页面的情况下完成。我试图定义@Ajax.ActionLink和text/javascript函数,但它根本不起作用。。。请帮忙。提前谢谢


Robert

首先,您应该包括脚本:jquery和jquery.unobtrusive-ajax-like:

<head>
    ...
    <script src="@Url.Content("~/Scripts/jquery-1.8.2.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
</head>
<script type="text/javascript">
    function myCallback(data) {
        if(!data.Success)
        {
             alert(data.ErrorMessage);
        }
        else
        {
            alert("id: " + data.Id);
        }
    }
</script>

@Ajax.ActionLink("Actionlink", // <-- Text to display
                 "GetDeneme", // <-- Action Method Name
                 new { id = "2"},
                 new AjaxOptions
                 {                         
                     HttpMethod = "POST", // <-- HTTP method
                     OnSuccess = "myCallback"
                 })
public ActionResult GetDeneme(string id)
        {
            var error = (id == "3");

            if (error)
            {
                return Json(new { Success = false, ErrorMessage = "Error!" });
            }

            return Json(new { Success = true, Id = id });
        }