繁体   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