Tôi đã có một Ajax.ActionLink như vậy:Làm thế nào để vượt qua một cuộc tranh cãi với chức năng thành công của một 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" })
Hiện nay chức năng onSuccess của tôi trông giống như vậy:
function ajaxLoadMoreSuccess() {
...
}
tôi muốn vượt qua một cuộc tranh cãi với nó:
function ajaxLoadMoreSuccess(myArg) {
...
}
đây có phải là có thể?
Cảm ơn trước
Không thể tin rằng tôi đã không hiểu rằng con số cho bản thân mình! Cảm ơn! – Sniffer
Không hiệu quả với tôi. Tôi đang cố gắng để vượt qua 'điều này' (bản thân bản thân được tạo ra). – Shimmy
Đó là vì con trỏ 'this' này không bị ràng buộc với phần tử dom cho hàm nặc danh hoặc cho hàm' ajaxLoadMoreSuccess'. Vì vậy, 'ajaxLoadMoreSuccess (this) ', ở đây' this' là giống 'this' như cho cuộc gọi thành công ajax (xem [' context' option] (http://api.jquery.com/jQuery.ajax/)). Và bên trong hàm 'ajaxLoadMoreSuccess'' this' bị ràng buộc với đối tượng chung ('window'). Bạn có thể tinh chỉnh kịch bản lệnh jquery.unobtrusive-ajax.js để nó liên kết 'this' với phần tử dom. Nhưng dễ dàng hơn, đặt id trên thẻ 'a' và sử dụng jquery để lấy phần tử. Như thế này, 'ajaxLoadMoreSuccess ($ (' # my-a-id ')) '. – Sperling