2009-11-23 72 views
0

更新面板,回發和jQuery。聽起來像一個壞笑話, 但這是我的情況。更新面板,回發和jQuery

我有兩個網格包裝在MS更新面板。每個網格 都有按鈕,導致回發事件發生。在一個 網格是一個由jQuery函數隱藏的div。並在一個網格 是一個超鏈接,可以導致隱藏的div顯示。 隱藏div的內部是用於另一個回發的asp:按鈕。

現在是當我遇到問題。當我點擊網格中的 按鈕中的任何一個時,由jQuery隱藏的我的div顯示 。我不想讓它出現。實際上,它應該保持隱藏狀態,直到 我稱之爲使其顯示出來的方法。 div的超鏈接點擊事件確實起作用,只是在回傳時,隱藏的div 顯示。任何人都知道可能是由什麼造成的?我在回發中丟失了什麼 ,或者我是否需要更多jQuery中 的document.ready部分。或者是MS ajax更新面板擰東西。

這裏是jQuery的的片段隱藏的div:

$(document).ready(function() { 
    $("#actionDiv").hide();     
}); 

回答

2

$的MS AJAX後面板(文件)。就緒()將不會觸發更新。如果你可以設置actionDiv的CSS。在它進入瀏覽器之前,這個問題會更好。

+0

+1沒有必要隱藏在文檔準備的div,只需隱藏它與CSS默認,然後顯示與jQuery如果需要(如果按鈕被點擊) – 2009-11-23 22:35:02

+0

爲什麼我沒有想到這一點?可能太過於在代碼中掛起了。 – Chris 2009-11-24 14:47:51

0

$(文件)。就緒(函數()只被調用一次你都做了局部回傳,所以你需要設置。 $( 「#actionDiv」)隱藏();每次

<script language="javascript" type="text/javascript"> 
    function AfterPostBackInit() { $("#actionDiv").hide(); } 

    // Run AfterPostBackInit() when the page loads and after every post-back. 
    Sys.Application.add_load(AfterPostBackInit); 
</script>