【问题标题】:Does the ASP.NET MVC AjaxHelper deal with degradation?ASP.NET MVC AjaxHelper 是否处理降级?
【发布时间】:2008-11-28 15:05:29
【问题描述】:
有谁知道 ASP.NET MVC 框架中的 AjaxHelper 是否处理降级问题?
例如,如果您有更新 div 内容的 ActionLink,如果 JavaScript 不可用,页面是否会通过 renderubg 页面(通过控制器上的操作)并调用 ActionLink 中指定的操作来执行完整的回发?
如果不是,您建议如何为启用 JavaScript 的浏览器和在 MVC 应用程序上下文中禁用 JavaScript 的浏览器正确设置页面功能?
【问题讨论】:
标签:
asp.net-mvc
ajax
deprecated
【解决方案1】:
您可以尝试的一件事是在您的控制器中,覆盖 OnActionExecuted 方法并为非 JavaScript 启用的浏览器更改 filerContext.ActionResult。您还可以将自己的 ActionFilters 添加到控制器中的不同操作中。
【解决方案2】:
您可以将Url 参数指定给AjaxOptions 对象到Ajax.ActionLink 调用:
@Ajax.ActionLink(role, "GetPeopleData",
new { selectedRole = role },
new AjaxOptions
{
UpdateTargetId = "tbody",
Url = Url.Action("GetPeopleData", new { selectedRole = role })
})