![](/img/trans.png)
[英]asp.net accessing javascript variables after ajax updatepanel
[英]ASP.Net Ajax UpdatePanel to be loaded only after the page is ready
我正在使用ASP.Net AJAX
UpdatePanel
加载页面的右侧。
由于该部分需要花费一些时间来加载,因此我想在页面的其他部分加载之后进行加载。
我可以使用普通的AJAX
或ASP.Net AJAX
但我想尝试使用后者。
我发现我的UpdatePanel
总是加载的。
我希望仅在页面准备好后才能加载它。
有人说使用计时器,有人说使用一些javascript。
但是我还是做不完。
因此,这是我的两个障碍,即在页面启动时停止加载和在页面准备就绪时开始加载
为什么不启用和禁用页面事件? 例如。 尝试在Page_PreLoad事件中,将更新面板的enable属性设置为False。 在Page_LoadComplete事件中,将其重新设置为enabled = true
UpdatePanels使用Ajax进行更新,而不是在首次加载时进行更新。
如果希望它在首次加载时快速加载,请避免任何昂贵的处理,也不要在加载数据库时调用数据库。 把它们放在一个
if(IsPostBack)
{
//your long processing
}
现在,使用AsyncPostBackTrigger进行updatePanel回发。
尝试使用此代码(条件模式+更新方法)
<asp:UpdatePanel ID="YourIdPanel" UpdateMode="Conditional" runat="server">
//In order to force loading
YourIdPanel.Update();
<script type="text/javascript">
var currentItemID=$('#<%= labcurrentItemID.ClientID %>').html();
if (currentItemID != null) {
$(document).ready(function () {
$('#main_container').load('/Custom/Going%20Places/PopularRelatedArticle.aspx?currentID=' + currentItemID);
});
}
else {
$(document).ready(function () {
$('#main_container').load('/Custom/Going%20Places/PopularRelatedArticle.aspx?currentID={7F0811A7-D484-4675-8A23-0AEB235B9B5F}');
});
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.