2013-07-15 66 views
1

我試圖在jquery對話框上顯示GridView。要將數據綁定到gridview,我點擊按鈕通過jquery如下。防止從ASP.NET中的按鈕刷新頁面

$('#' + '<%= btnBindGridViewData.ClientID %>').trigger("click"); 

但用此按鈕點擊,頁面刷新。所以jquery對話框正在消失。

按鈕

<asp:Button runat="server" ID="btnBindGridViewData" OnClick="btnBindGridViewData_Click" Style="visibility: hidden; 
    display: none;" /> 

代碼隱藏

protected void btnBindGridViewData_Click(object sender, EventArgs e) 
{ 
    //bind data into gridview from here 
} 

通過jQuery,請點擊下面按鈕。

$('#' + '<%= btnBindGridViewData.ClientID %>').trigger("click"); 

上述代碼觸發click按鈕的事件,並執行btnBindGridViewData_Click()和綁定數據到gridview

有什麼辦法可以防止頁面刷新,點擊按鈕並在jquery對話框上顯示gridview

+1

可以顯示單擊事件? –

+0

@DKM點擊事件是指? – Bishan

+0

你正在觸發'click()'按鈕,所以你寫了'click()'在javascript中? –

回答

0

使用UpdatePanel獲得如下。

<asp:UpdatePanel runat="server" ID="UpdatePanel1" UpdateMode="Conditional"> 
    <Triggers> 
    <asp:AsyncPostBackTrigger ControlID="btnBindGridViewData" EventName="Click" /> 
    </Triggers> 
    <ContentTemplate> 
     //GridView here 
    </ContentTemplate> 
</asp:UpdatePanel> 
0

這不起作用。

你已經在代碼後面的文件中編寫了綁定gridview的邏輯。爲了執行文件後面的代碼,頁面需要刷新(回發)

您可以停止刷新頁面的按鈕(onclick = "return false;"),但這不會在服務器上執行您的單擊事件。你需要重新思考你的方法。對jQuery的對話框運行的GridView

的一種方法是,你可以設置網頁上的隱藏變量(以表明按鈕被點擊),然後在文件準備好,你可以打開jQuery的對話框。

$(document).ready(function(){ 
    // if flag == true, open dialog 
}); 

注意:雖然我不會推薦這種方法。

+0

使用'UpdatePanel'實現 – Bishan