asp.net - 文本框值未清除

标签 asp.net ajax postback

在下面的代码中,单击按钮后 TextBox 值不会被清除。

默认.aspx

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <br />
    <asp:Timer ID="Timer1" runat="server" ontick="Timer1_Tick" Interval="20">
    </asp:Timer>
    <br />
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <Triggers>
                <asp:AsyncPostBackTrigger controlid="Timer1" eventname="Tick" />
            </Triggers>
        <ContentTemplate>
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    <asp:Repeater ID="Shout_Box" runat="server">
            <ItemTemplate>
               <%# DataBinder.Eval(Container.DataItem, "Message") %>
            </ItemTemplate>
        </asp:Repeater>

        <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
        </ContentTemplate>
    </asp:UpdatePanel>
    <asp:TextBox ID="TextBox1" runat="server">
        </asp:TextBox>
    </form>
</body>
</html>

用于按钮点击的 C# 代码。

protected void Button1_Click(object sender, EventArgs e)
{
    string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" + "SERVER=localhost;" + "DATABASE=repeater;" + "UID=root;" + "PASSWORD=********;" + "OPTION=3";
    OdbcConnection MyConnection = new OdbcConnection(MyConString);
    OdbcCommand cmd = new OdbcCommand("INSERT INTO table1(message)VALUES(?)", MyConnection);
    cmd.Parameters.Add("@email", OdbcType.VarChar, 255).Value = TextBox1.Text;
    MyConnection.Open();
    cmd.ExecuteNonQuery();
    MyConnection.Close();
    TextBox1.Text = "";
}

我尝试添加上面的一行 TextBox1.Text = ""; 来清除文本,但没有用。 请不要要求我将 Button 保留在 updatepanel 标记之外。我需要在不回发页面的情况下完成该事件。

如果文本框位于内部由于计时器触发了 20 飞秒,文本框过于闪烁且不允许编辑。简单来说TextBox就是清爽,不允许添加哪怕一点文字。

我不想将其扩展到 JavaScript 和其他内容以清除文本框中的值。谁能告诉我如何使用 C# 清除文本框值。

最佳答案

使用另一个更新面板并在 Page_Load 函数中添加 UpdatePanedid.Update(); 希望这对您有帮助。

关于asp.net - 文本框值未清除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7355210/

相关文章:

c# - MVC4 中使用 SignalR 的提醒模型

ajax - Firefox 网站如何使其下载统计页面正常工作?

asp.net-mvc-3 - ASP.NET MVC3 Razor - 在回发时保持滚动位置

ajax - 单页多个表单的优雅解决方案

c# - 有关使用最新.Net技术开发基于Web的新应用程序的建议

c# - Asp.Net Mvc4 : How to use @ character in js file

c# - 通用存储库,CreateObjectSet<T>() 方法

jquery - Ajax 数据返回缓慢

javascript - 如何使用 EJS 模板引擎将变量传递给内联 javascript?

postback - 如何阻止 Telerik RadWindow 总是在下一个回发时重新加载