close
執行順序
$(document).ready()
Sys.Application.add_load()
差別
都是在頁面初始化時就會呼叫,不過還是有點細微的差異
一般情況下沒什麼差別.但是在使用updatepanel的環境就差別很大了
$(document).ready() 在一般的postback,每次都會被觸發,但是在ajax postback 是不會被觸發的.
Sys.Application.add_load() 則是無論哪種postback都會被觸發
應用
當使用jQuery 註冊一些元件時,如果元件包含在updatepanel裡就要使用Sys.Application.add_load()以確保在ajax postback之後都會被註冊到
範例
<script>
function ajaxLoad() {
alert("ajax library add_load");
}
function documentReady() {
alert("jquery document ready");
}
</script>
<asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<script>
$(documentReady);
Sys.Application.add_load(ajaxLoad);
</script>
<asp:Button ID="Button5" runat="server" Text="Postback" />
</ContentTemplate>
</asp:UpdatePanel>
當頁面第一次被執行時 , documentReady 跟 ajaxLoad 都會被呼叫,但是當 Button5 被按下時 就只有 ajaxLoad 會被呼叫.
文章標籤
全站熱搜