簡體   English   中英

為什么在ASP.NET中使用AJAX后我的按鈕代碼不起作用?

[英]Why my button code doesn't work after using AJAX in ASP.NET?

我在asp.net中有一個按鈕可以清除文本框,並且按如下方式使用ajax:

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button2" runat="server" Font-Bold="False" Font-Names="Tahoma" Font-Size="16px" ForeColor="DarkRed" Height="40px" OnClick="Button2_Click" Text="Clear Form" Width="165px" />
</ContentTemplate>
</asp:UpdatePanel>

同樣,此按鈕具有以下C#代碼:

protected void Button2_Click(object sender, EventArgs e)
    {
        txtFirstName.Text = string.Empty;
        txtLastName.Text = string.Empty;
        txtEmail.Text = string.Empty;
        txtSubject.Text = string.Empty;
        txtMessage.Text = string.Empty;
    }

但是,當我執行該程序時,前面的C#代碼不起作用! 換句話說,單擊按鈕后文本框不會清除! 請告訴我為什么會發生?!

您需要修改updatepanel,請將所有Label和TextBox控件放置在UpdatePanel中的Update Panel和Button Events中,並添加Button ID的Trigger。

AsyncPostBackTrigger或PostBackTrigger

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
  // HERE  YOUR TEXTBOX AND LABEL CONTROLS 
</ContentTemplate>
 <Triggers>
      <asp:AsyncPostBackTrigger ControlID="Button2"
  </Triggers>
</asp:UpdatePanel>
<asp:Button ID="Button2" runat="server" Font-Bold="False" Font-Names="Tahoma" Font-Size="16px" ForeColor="DarkRed" Height="40px" OnClick="Button2_Click" Text="Clear Form" Width="165px" />

您應該將“文本框”放置在“更新”面板中為

 <asp:ScriptManager ID="ScriptManager1" runat="server">
            </asp:ScriptManager>
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                    <asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtSubject" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtMessage" runat="server"></asp:TextBox>

                    <asp:Button ID="Button2" runat="server" Font-Bold="False" Font-Names="Tahoma" Font-Size="16px" ForeColor="DarkRed" Height="40px" OnClick="Button2_Click" Text="Clear Form" Width="165px" />
                </ContentTemplate>
            </asp:UpdatePanel>

我已經嘗試過並且按鈕代碼正在工作.aspx代碼

<div>
     <asp:ScriptManager ID="ScriptManager1" runat="server">
            </asp:ScriptManager>
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                    <asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtSubject" runat="server"></asp:TextBox>
                    <asp:TextBox ID="txtMessage" runat="server"></asp:TextBox>


                    <asp:Button ID="Button2" runat="server" Font-Bold="False" Font-Names="Tahoma" Font-Size="16px" ForeColor="DarkRed" Height="40px" OnClick="Button2_Click" Text="Clear Form" Width="165px" />
                </ContentTemplate>
            </asp:UpdatePanel>
    </div>

.aspx.cs頁面編碼

protected void Button2_Click(object sender, EventArgs e)
        {
            txtFirstName.Text = string.Empty;
            txtLastName.Text = string.Empty;
            txtEmail.Text = string.Empty;
            txtSubject.Text = string.Empty;
            txtMessage.Text = string.Empty;
        }

暫無
暫無

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

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