我覺得這是一個愚蠢的問題,但我很難得到這個答案。在asp.net上隱藏jQuery對話框
我只想在頁面第一次呈現時顯示jquery對話框。在頁面呈現之後,有多個操作會導致頁面回發,但用戶不會離開該頁面。
如何禁止在這些回發事件上顯示jQuery對話框。
在此先感謝!
我覺得這是一個愚蠢的問題,但我很難得到這個答案。在asp.net上隱藏jQuery對話框
我只想在頁面第一次呈現時顯示jquery對話框。在頁面呈現之後,有多個操作會導致頁面回發,但用戶不會離開該頁面。
如何禁止在這些回發事件上顯示jQuery對話框。
在此先感謝!
一種方法可以去除在回發對話框元素,這樣的jQuery選擇不匹配任何東西。不知道這是否是最好的方式,但它應該工作。
void Page_Load()
{
// stuff
if(this.IsPostback)
dialogElement.Visible = false;
}
你dialogElement可以是任何東西,只要有中用runat =「服務器」,您可以從代碼隱藏的訪問。 Visible屬性控制元素是否在HTML輸出中呈現,因此如果該元素爲false,則該元素將不存在於DOM中。
處理這種情況的另一種方法是在服務器端Page_Load事件期間將服務器端變量作爲javascript變量注入頁面。 Rick Strahl創建了一個類,使其對pass ASP.NET server side variables to the client side JavaScript變得微不足道。您可以將您的變量添加爲呈現爲JavaScript屬性的鍵/值對。
感謝您的回覆。由於對話框需要在頁面加載時顯示,並且可以通過單擊鏈接重新打開,所以我想出了一個與ckramer類似的解決方案。 HtmlGenericControl bdy =(HtmlGenericControl)Master.FindControl(「MasterBody」);如果(!IsPostBack) { bdy.Attributes.Add(「onload」,「isPostBack()」); } else { bdy.Attributes.Remove(「onload」); } 的JavaScript 功能的IsPostBack(){ $( '#thedialog')對話框( '開放')。 返回false; } – mellowyellow77 2010-06-01 14:09:20