ASP.NET MVC - Come arrivare Ajax 'onclick' per un'azione specifica (ho bisogno per Ajax.ActionLink quello che fa per Url.RouteUrl Html.ActionLink)
-
05-09-2019 - |
Domanda
REVISIONE
Voglio aggiungere un onclick ad un elemento che gestisce una richiesta Ajax, non solo un percorso-reindirizzamento.
Non ho queste opzioni per un percorso-url.
Html.ActionLink(params)
Url.RouteUrl(params) 'returns JUST ActionUrl
Quindi posso andare come
<div onclick="javascript:location.href('<%=Url.RouteUrl(params)%>')"></div>
Ma come faccio a generare il seguente ??
<div onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, updateTargetId: 'WorkorderDetails' });"></div>
Soluzione
Si scopre che non è possibile. La funzione Sys.Mvc.AsyncHyperlink.handleClick () si basa sul tag di ancoraggio per funzionare correttamente. Il href specificato nel ancoraggio viene utilizzato per determinare quale servizio si chiama sul server.
Ho finito per creare un Ajax.ActionLink () e che lo rende invisibile (display: none). So che invocano il clic utilizzando Javascript. jQuery realtà (invoke normale: link.click () non funziona correttamente!):
$(link).trigger("click");
Altri suggerimenti
Non sono sicuro se ho ben capito la domanda giusta, ma si vuole solo l'URL grezzo, sulla base di un metodo di azione o cosa?
Poi come su UrlHelper classe ?
href="https://stackoverflow.com/questions/366498/creating-urls-with-asp-net-mvc-and-routeurl"> domanda precedente Questa discute questa opzione.
Come ho detto, io non sono sicuro di aver capito la domanda al 100%, però.