簡體   English   中英

禁用Linkbutton的回發

[英]Disable Postback for Linkbutton

我使用ASP.NET LinkBut​​ton。 我有一個LinkBut​​ton,它從onclick調用代碼:

在aspx上:

 <asp:LinkButton ID="LinkTest" runat="server" onclick="LinkTest_Click" OnClientClick="return false;"  >LinkButton</asp:LinkButton>

在aspx.cs上:

 protected void LinkTest_Click(object sender, EventArgs e)
    {
        //code here
    }

如你所見,我已經設置了OnClientClick="return false;" 所以它不會做回發。 回發不會發生。 但是背后的代碼並沒有被解雇。 我希望后面的代碼能夠觸發,而且當點擊鏈接按鈕時我不需要回發。

我怎樣才能做到這一點?

謝謝。

刪除鏈接按鈕的OnclientClick屬性。 嘗試使用UpdatePanel如:

<asp:UpdatePanel ID="up1" runat="server" UpdateMode="Conditional">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="LinkTest" EventName="Click" />
    </Triggers>
    <ContentTemplate>
          <asp:label id="Label1" runat="server" Text="Initial Label" />
    </ContentTemplate>
</asp:UpdatePanel>

此外,您還需要在頁面中添加ScriptManager

在updatepanel中添加linkbutton,刪除linkbutton的onclientclick屬性:

頁:

    <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <asp:Label ID="lblName" runat="server" Text="Old Value"></asp:Label>
            <br />
            <asp:LinkButton ID="lnkbtChange" runat="server" OnClick="lnkbtChange_Click">Change</asp:LinkButton>
        </ContentTemplate>
    </asp:UpdatePanel>

代碼隱藏:

protected void lnkbtChange_Click(object sender, EventArgs e)
{
    lblName.Text = "New value";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM