我尝试使用ajax触发TextChange事件但是dosnt真的很好地解决了我的工作方式。希望你们能帮助我。
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:ScriptManager ID="ScriptManager1" runat="server" AsyncPostBackTimeout="0">
</asp:ScriptManager>
<asp:TextBox ID="TextBox1" runat="server" AutoCompleteType="Disabled" AutoPostBack="True" OnTextChanged="TextBox1_TextChanged"></asp:TextBox>
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="TextBox1" EventName="TextChanged" />
</Triggers>
</asp:UpdatePanel>
答案 0 :(得分:2)
ScriptManager应该出现在UpdatPanel之前,而不是在其内部。而且您不需要将TextBox1
定义为触发器。默认情况下,TextBox位于UpdatePanel内,属性ChildrenAsTriggers
为true,当TextBox1
在其内容被修改后失去焦点时,面板将会更新。
<强>更新强>
我最初误解了这个问题。以下帖子描述了每次在TextBox中按下键时触发回发并刷新UpdatPanel的方法:How do I make a Textbox Postback on KeyUp?。