我在 MVC 中使用 Jquery 我在锚标记的 onclick 事件中遇到了一些问题。这正在调用一个 Javascript 函数,该函数又向控制器发出 AJAX 调用
<a id="LoginLink_@Model.DomainLibraries[i].Id" href="" onclick="LoginLibrary(this);" domainLibId="130" HasRole="false" style="text-decoration:underline;">Login</a>
function LoginLibrary(obj) {
var selectedLibraryId = obj.getAttribute('domainLibId');
var hasUserRole = obj.getAttribute('HasRole');
$.ajax({
type: "POST",
url: "/Account/LoginLibrary",
data: { domainLibraryId: selectedLibraryId, hasUserRole: hasUserRole },
success: function (arg) {
alert(arg);
$("#divExAuthLibSetting").html(arg);
},
error: function (xhr, ajaxOptions, thrownError) {
}
});
}
发生的事情是,当我单击登录链接时,在调用控制器方法之前,它会给出一个带有空值的警报,可能是因为“alert(arg);”。然后呼叫转到控制器。但是在控制器响应后,我无法在 arg 中得到任何东西。
如果我在 document.Ready() 中调用函数 LoginLibrary(),我们的事情就可以正常工作。我能够得到响应“arg”并在 div 中显示它。
这是否意味着ajax调用不适用于点击时的锚标记..