Asp.net
ASP.Net AJAX 多個 pageLoad 功能可能嗎?
我有一個注入 javascript
pageLoad函式的 ASP.Net 控制項。我也有pageLoad直接在頁面上的功能。我似乎無法讓他們倆都開火。您是否僅限於 javascript 中具有相同名稱的單個函式?
是的……像大多數語言一樣,JavaScript 要求符號在其範圍內是唯一的。在 JavaScript 中,如果您在給定範圍內為函式創建多個定義,那麼最後一個定義“獲勝” - 就好像以前的定義不存在一樣。
為了使您的冗餘
pageLoad功能起作用,您需要做的是使用該Sys.Application.add_load()方法。使用它,您可以將任意數量的處理程序附加到頁面載入事件。更重要的是,您可以使用匿名函式在add_load方法中添加。這樣做將保證您不會有重複名稱的處理程序的危險。例子:StringBuilder sb = new StringBuilder(); sb.Append("Sys.Application.add_load("); sb.Append("function() { alert('page load'); });"); ClientScript.RegisterStartupScript(this.GetType(), "Page_Load", sb.ToString(), true);您可以在客戶端輕鬆使用
Sys.Application.add_load,甚至可以多次添加相同的處理程序。這將導致多次觸發相同的功能:)