0

我有一个需要在页面加载后以及在 ajax 事件上运行的函数,因为我的大部分网站都是使用 c#/asp.net/mvc4(我仍然很新)通过 ajax 异步加载的 Ajax.ActionLink和局部视图。

有谁知道我如何在这两个事件上触发此功能?我目前必须复制该函数两次,一次在 ajax.success 上,然后再次在 doc.ready 上

谢谢,

标记

4

2 回答 2

1

您可以通过创建一个封装您需要执行的逻辑的对象来保持 DRY,然后在适当的时候调用它。

// don't pollute the global namespace
var MyApplication = {
     theLogic: function() {
         alert('performing logic');
     }
};

 // document ready/page loaded
 $(function() {
    MyApplication.theLogic();
 });

 // after ajax calls
 $.ajax({
    ...
    success: function() { MyApplication.theLogic(); }
 });
于 2013-09-24T01:35:37.120 回答
0

您可以通过使用来解决等待页面加载的第一个问题

jQuery

$(function() {
    //This will be be run once DOM is initialized
});

或使用 onload

document.body.onload = function () {
    //Fired when DOM is loaded
}

从那里您可以使用 AJAX 调用调用您的 AJAX 调用或函数,如下所示:

$(function () { 
    $.ajax({
        url : "",
        success : function () {...}
    });
});  
于 2013-09-24T01:14:45.127 回答