下面是一个MVC4示例。onbegin、onsuccess、oncomplete和onfailure函数用于启用/禁用我的ajax动画。每个函数都传递一个item id作为参数,允许我对所有ajax部分重用js函数。ajaxonbegin()显示gif,ajaxonsuccess再次隐藏它。
<script>
@*Ajax Animation*@
$(document).ready(function () {
$("#ajaxLoadingGif").hide();
});
function ajaxOnbegin(id) {
//show animated gif
$(id).show();
}
function ajaxOnsuccess(id) {
//disable animated gif
$(id).hide();
}
function ajaxOnfailure(id) {
//disbale animated gif
$(id).hide();
}
function ajaxOncomplete(id) {
//disable animated gif
$(id).hide();
}
</script>
@Ajax.ActionLink(linkText: " Hi", // <-- Text to display
actionName: "getJobCards", // <-- Action Method Name
routeValues: new { searchString = ViewBag.searchString},
ajaxOptions: new AjaxOptions{
"#itemId", // <-- DOM element ID to update
InsertionMode = InsertionMode.Replace,
HttpMethod = "GET", // <-- HTTP method
OnBegin = "ajaxOnbegin('#ajaxLoadingGif')",
//="ajaxOnbegin" without parameters
OnSuccess = "ajaxOnsuccess('#ajaxLoadingGif')",
OnComplete = "ajaxOncomplete('#ajaxLoadingGif')",
OnFailure = "ajaxOnfailure('#ajaxLoadingGif')"
},
htmlAttributes: new { id = ViewBag.ajaxId }
)