【问题标题】:ASP.net web TextChangedEvent not firingASP.net web TextChanged 事件未触发
【发布时间】:2018-08-04 12:29:20
【问题描述】:

我正在尝试制作一个具有一些有趣功能的网站,这些功能需要带有文本框的工作 TextChanged 事件。这是我尝试做的:

文本框html代码

C# 嵌入代码

protected void Page_Load(object sender, EventArgs e)
{
    TextBox1.TextChanged += TextBox1_TextChanged;
}

protected void TextBox1_TextChanged(object sender, EventArgs e)
{
    DateTime time = new DateTime();

    try
    {
        int textBoxValue = Convert.ToInt32(TextBox1.Text);
        Label2.Text = "valid" + time.ToString("hh:mm:ss");
    }
    catch
    {
        Label2.Text = "test";
        TextBox1.Text = "1";
    }
}

https://pastebin.com/mAyKMLE5 还包含一些 html 代码。

不知何故,我认为它根本没有注册任何 textChangedEvents。我在想页面必须实际重新加载才能注册它?无论如何,我希望有人可以帮助我。如果您需要有关该问题的其他信息,我很乐意提供。

提前致谢, 荷兰果冻

【问题讨论】:

  • 你知道它只在回发时触发吗?我想你可能希望它在有人键入时触发?
  • 我对网络开发很陌生。其实我是今天开始的。感谢您向我发送有用文档的链接。

标签: c# html asp.net web textbox


【解决方案1】:

如果 AutoPostBack = true 尚未出现在 TextBox 上,您也需要以编程方式添加它。

TextBox1.TextChanged += TextBox1_TextChanged;
TextBox1.AutoPostBack = true;

【讨论】:

    【解决方案2】:
    <asp:TextBox ID="TextBox1" runat="server" Style="margin-top: 0px" Width="32px" OnTextChanged="TextBox1_TextChanged" AutoPostBack="True" Font-Size="Small" Height="16px">1</asp:TextBox>  
    

    在您的文本框中添加AutoPostBack="True"

    【讨论】:

    • 欢迎......接受作为答案:)
    • @jellekeulemans 你真的想在每封打字的信上回帖吗?通常你会为此使用 ajax/xhr。
    • 我的代表太低了:P
    • @DinkarVeer 我想这是你的意见,但我怀疑很多人会同意持续回发是一个很好的选择。
    • 哦,我对 ajax 太陌生了。我只是想让一些东西发挥作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 2013-06-23
    • 1970-01-01
    相关资源
    最近更新 更多