2013-06-21 64 views
0
$(document).ready(function() { 

    $("#Div_1").show(); 
    $("#Div_2").hide(); 

    $('#Button1').click(function() { 

     $("#Div_1").hide(); 
     $("#Div_2").show(); 
     return false; 
    }); 

}); 

工作正常,但事件不點火Asp.net按鈕事件火在上面的代碼jQuery代碼jQuery代碼

+0

哪個事件?服務器端/客戶端?你能詳細說明你的要求和問題嗎? – AYK

+0

$(文件)。就緒(函數(){ $( 「#Div_1」)顯示(); $( 「#Div_2」)隱藏(); $( '#Button1的')點擊(函數(){ $( 「#Div_1」)隱藏(); $( 「#Div_2」)顯示(); 返回FALSE; }); 保護無效的button1_Click(對象發件人, EventArgs e) { Label1.Text =「Hello」; }準確代碼 –

+0

服務器端事件 –

回答

3

在你的JavaScript代碼,您可以將客戶端點擊處理程序的按鈕,然後return false在處理程序的末尾。這可以防止點擊事件繼續向上,這也可能導致它不會觸發內置的回發代碼。

嘗試刪除return false語句以便將回發到服務器。

但請注意,這可能不像您預期​​的那樣。無論你在做什麼客戶端(顯示/隱藏元素,它將出現)只會在代碼發佈到服務器和頁面刷新之前的一瞬間發生,從而失去這些客戶端更改。

+0

問題重複爲:http://stackoverflow.com/questions/17231249/how-to-prevent-postback-using-jquery/17231303#17231303 – cinek

+0

是的,你說的是正確的,但是解決方案是什麼 –

+0

@RajeshGonugunta:取決於你想做什麼,這完全不清楚示例代碼。如果您必須回發到服務器*和*,您必須在頁面上顯示/隱藏元素,那麼您應該在服務器端代碼中顯示/隱藏它們。如果您不必回發到服務器,並且可以完全在客戶端上處理點擊事件(或者可能通過AJAX發佈到服務器),那麼您可以使用純HTML按鈕(無服務器端控件)和控件事件客戶端。 – David