问题是,我调用了一些函数来初始化页面上的一些元素。但是在ajax成功之后,我不得不在多个地方一次又一次地重新调用这些函数。我想知道除了使用以下组合
$(document).ready(function(){
function A
});
$(document).ajaxComplete(function(){
function A
});
我读到我可以用setTimeout做一些事情,并为线程计时,以延迟来自链接的函数调用http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html但我很难消化。如果有人能帮我分解的话。
更新:
我的意思是,当我在多个ajax中成功更新html时,我必须调用函数A来重新初始化,上面的代码是我的想法,但我认为应该有更好的方法
示例
$(document).on('click', 'a', function() {
$.ajax({
type: 'GET',
url: 'some url',
data: data,
success: function(data) {
$('#some-sector').html(data);
function A; <------- to init
}
});
});
$(document).on('click', 'b', function() {
$.ajax({
type: 'GET',
url: 'another url',
data: data,
success: function(data) {
$('#some-sector').html(data);
function A; <------- to init
}
});
});
另一个更新:
因此,基本上页面上有一些元素需要通过调用函数A来动态更新。从这个例子中,我有多个ajax来更新页面。我想知道是否有更好的方法可以做到这一点,而不是多次调用ajax成功的函数A。我唯一能想到的就是顶级代码。
据我所知,您正在调用DOM上的一些函数组用作
$(document).ready(function(){
function_01();
function_02();
function_03();
});
并希望在ajax请求上调用相同的函数
$(document).ajaxComplete(function(){
function_01();
function_02();
function_03();
});
您可以定义一个通用函数,在内部调用所有需要的函数
function callAll()
{
function_01();
function_02();
function_03();
}
然后作为以下调用
$(document).ready(callAll);
$(document).ajaxComplete(callAll);
您希望以什么逻辑一次又一次地调用这个callAll方法。。
更新
尝试调用下面的函数
$(document).ready(function () {
function callall()
{
alert("call all");
}
$(document).ajaxComplete(callall);
});
这将在ajax请求被处理后调用initialize函数
希望有帮助。。。。。。。。。。。