Ho un Ajax.ActionLink in questo modo:Come faccio a passare un argomento alla funzione successo di un Ajax.ActionLink
@Ajax.ActionLink("Load Related Titles",
"AjaxLoadRelated",
"Shared",
new { RelatedComics = c.RelatedComic.RelatedTitles },
new AjaxOptions() { HttpMethod = "Get", UpdateTargetId = "divRelatedTitles", LoadingElementId = "divLoading", OnBegin = "ajaxLoadMoreBegin", OnFailure = "ajaxLoadMoreFailed", OnSuccess = "ajaxLoadMoreSuccess" })
Attualmente la mia funzione OnSuccess assomiglia così:
function ajaxLoadMoreSuccess() {
...
}
vorrei passare un argomento ad esso:
function ajaxLoadMoreSuccess(myArg) {
...
}
è possibile?
Grazie in anticipo
Non posso credere che non ho capito che per me stesso! Grazie! – Sniffer
Non funziona per me. Sto provando a passare 'this' (l'ancora generata stessa). – Shimmy
Questo perché il puntatore "this'" non è associato all'elemento dom per la funzione anonima o per la funzione 'ajaxLoadMoreSuccess'. Quindi 'ajaxLoadMoreSuccess (this)', qui 'this' è lo stesso' this' come per la chiamata di successo ajax (si veda [opzione 'context'] (http://api.jquery.com/jQuery.ajax/)). E all'interno della funzione 'ajaxLoadMoreSuccess' questo' è legato all'oggetto globale ('window'). Puoi modificare lo script jquery.unobtrusive-ajax.js in modo che leghi 'questo' all'elemento dom. Ma più facilmente, imposta un id sul tag 'a' e usa jquery per ottenere l'elemento. In questo modo, 'ajaxLoadMoreSuccess ($ ('# my-a-id'))'. – Sperling