Ajax.ActionLink浏览器中代码解析问题
Ajax.ActionLink浏览器中代码解析问题
<%=Ajax.ActionLink("动态", "Index", "Index", new { id = 1 }, new AjaxOptions() { LoadingElementId = "Loading", UpdateTargetId = "Main", HttpMethod = "Get", OnFailure = "dialogOpen" })%>
解析正确的话:
<a href="/Manager/1" onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, httpMethod: ‘Get‘, loadingElementId: ‘Loading‘, updateTargetId: ‘Main‘, onFailure: Function.createDelegate(this, dialogOpen) });">动态</a>
不正确的话:
<a data-ajax="true" data-ajax-failure="dialogOpen" data-ajax-loading="#Loading" data-ajax-method="Get" data-ajax-mode="replace" data-ajax-update="#Main" href="/Manager/1">动态</a>
看到这里,应该可以看出,一个是MVC2的代码解析,一个是MVC3的代码解析。
到网上看一下MVC3的新特性,就可以知道:
多了一个新特性Unobtrusive JavaScript
解决方案:Web.config
- <configuration><appSettings> <add key="ClientValidationEnabled" value="true"/> <add key="UnobtrusiveJavaScriptEnabled" value="true"/> </appSettings></configuration>
把true改成false就可以啦!
<add key="UnobtrusiveJavaScriptEnabled" value="false"/>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。