我有一个非常简单的问题,我正在努力寻找解决方案。jQuery自动完成在ASP.NET回发期间不保留值
基本上我有一个ASP.NET文本框声明为这样。
<asp:TextBox runat="server" ID="txtCourse" CssClass="input-xlarge HighlightibleField" placeholder=""></asp:TextBox>
在此文本框中,我绑定了一个像这样的jQuery UI自动填充小部件。如预期然而txtCourse.Text不会存留(或回发),它正在与填充值发生
$("#<% =txtCourse.ClientID %>").autocomplete({
source: ["Course1", "Course2", "Course3"],
select: function (event, ui) {
__doPostBack("<% =btnPostBacker.UniqueID %>", "");
}
});
回发。
因此,例如,我继续选择“Course1”,将值填充到txtCourse文本框中,发生回发,然后查看txtCourse.Text的值,它仍然只是我输入的文本使用键盘(例如:“c”)。
我已经尝试设置一个计时器非常轻微延迟投递的执行会:
setTimeout(function() {
__doPostBack("<% =btnPostBacker.UniqueID %>", "");
}, 500);
虽然这似乎是工作,我觉得这不应该是必要的,不知道为什么这是必需的。
我在做什么错?任何帮助将真诚感谢。
回发前右,设置像'$上文本框的值,事( “#<%= txtCourse.ClientID%>”)值(的SelectedValue )'所以文本框发布的价值,并保留后发回。如果不发生,意味着您在后面的代码上更改了文本框的值。 – Aristos 2013-02-13 00:17:49