gpt4 book ai didi

C# - TextBox TextChanged 事件未触发

转载 作者:行者123 更新时间:2023-11-30 12:49:58 25 4
gpt4 key购买 nike

我目前正在处理一个项目,但出于某种原因,我的文本框的 textchanged 事件没有触发。我试图在我的代码中放置一个断点,但他没有到达那里,所以他的事件没有触发 imo。

<FooterTemplate>
<asp:TextBox ID="TextBoxSiteAlias" runat="server" AutoPostBack="true" OnTextChanged="TextBoxSiteAlias_TextChanged"></asp:TextBox>
<ajaxToolkit:AutoCompleteExtender
runat="server"
id="AutoCompleteExtenderSiteAlias"
targetcontrolid="TextBoxSiteAlias"
servicemethod="GetSiteAliasList"
minimumprefixlength="2"
completioninterval="1000"
enablecaching="true"
completionsetcount="12" />
</FooterTemplate>

这是我的 Gridview 中的 FooterTemplate。

protected void TextBoxSiteAlias_TextChanged(object sender, EventArgs e)
{
string query = @"select distinct (isnull([site_address1], '')
+isnull([site_address2], '')
+isnull([site_address3], '')
+isnull([site_address4], '')
+isnull([site_address5], '') ) as 'Site_adresse' ,
city,
country,
[site_id] as 'siteID'
FROM [Henkel].[dbo].[tbl_Henkel_site_info_upload]
WHERE site_id = '" + ((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteAlias")).Text + "'";
conn.Open();
SqlCommand cmd = new SqlCommand(query, conn);
SqlDataReader myReader = cmd.ExecuteReader();
DataTable myTable = new DataTable();
myTable.Load(myReader);
conn.Close();
if (myTable.Rows.Count > 0)
{
((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteAddress")).Text = Convert.ToString(myTable.Rows[0]["Site_adresse"]);
((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCity")).Text = Convert.ToString(myTable.Rows[0]["city"]);
((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCountry")).Text = Convert.ToString(myTable.Rows[0]["country"]);
((TextBox)GridView1.FooterRow.FindControl("TextBoxIBSSiteID")).Text = Convert.ToString(myTable.Rows[0]["siteID"]);
}
else
{
((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteAddress")).Text = "";
((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCity")).Text = "";
((TextBox)GridView1.FooterRow.FindControl("TextBoxSiteCountry")).Text = "";
((TextBox)GridView1.FooterRow.FindControl("TextBoxIBSSiteID")).Text = "";
}
}

这是在专用文本框失去焦点时应立即调用的函数。

我一直在许多论坛上寻找原因,但所有这些回复都表明文本框需要 AutoPostBack 属性(我的有)。

小提示:我有同一个项目(我们公司的另一笔交易具有所有相同的功能,并且在那个项目中它工作正常。我已经将该项目代码复制到新项目并更改了所有查询+连接字符串)

希望有人能帮我解决这个问题? :)

非常感谢

凯文

最佳答案

确保 CausesValidation 设置为 false。

关于C# - TextBox TextChanged 事件未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10276570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com