ASP.NET MVC - 如何获取 Ajax“onclick”以执行特定操作(我需要 Ajax.ActionLink,就像 Url.RouteUrl 对 Html.ActionLink 所做的那样)
-
05-09-2019 - |
题
修订
我想向处理 Ajax 请求的元素添加 onclick,而不仅仅是路由重定向。
我有这些路由 URL 选项。
Html.ActionLink(params)
Url.RouteUrl(params) 'returns JUST ActionUrl
所以我可以像
<div onclick="javascript:location.href('<%=Url.RouteUrl(params)%>')"></div>
但我如何生成以下内容?
<div onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, updateTargetId: 'WorkorderDetails' });"></div>
解决方案
事实证明这是不可能的。Sys.Mvc.AsyncHyperlink.handleClick() 函数依赖于锚标记才能正常运行。锚点中指定的 href 用于确定在服务器上调用哪个服务。
我最终创建了一个 Ajax.ActionLink() 并使其不可见(显示:无)。我知道使用 Javascript 调用点击。实际上是 jQuery(正常调用:link.click() 无法正常工作!):
$(link).trigger("click");
其他提示
我不知道如果我理解的问题的权利,但你要的只是粗略的URL,基于一个操作方法还是什么?
然后如何有关 UrlHelper类一>
此先前的问题上SO 讨论此选项。
就像我说的,我不知道我理解的问题100%,虽然。
不隶属于 StackOverflow