我试图在PHP/jQuery环境中模仿ASP主/内容页概念,在其中我可以在母版页中运行AJAX调用来动态地包含内容页。我在母版页中添加了一个div占位符,并使用以下代码动态添加内容页:
$.ajax({
url: "ajax.php"
, type: "POST"
, data: {'cmd' : 'dashboardView'}
, success: function(response, sts){
if(response.flag)
{
$("#divMainContentPHolder").html('');
$("#divMainContentPHolder").html(response.mainContent);
}
else
alert(" unsuccessful!");
}
, dataType: "json"
});
代码工作正常,但问题是,由于在内容页中有一些javascript函数,如果上述函数第二次运行,这些函数将被复制,从而运行多次。我想知道是否有人可以帮助我了解这种开发的最佳实践是什么。谢谢你
如果您希望一个函数只运行一次,只需命名它以便重新定义它:
success: function onetimer(response, sts){
if(response.flag)
{
$("#divMainContentPHolder").html('');
$("#divMainContentPHolder").html(response.mainContent);
}
else
{
alert(" unsuccessful!");
}
onetimer = function(){}; /* redefine me as an empty function */
}
后续调用将不执行任何操作