Typeahead 和 ServerSide onTextChanged 事件未正确同步
Typeahead and ServerSide onTextChanged event not sync properly
我有一个 TextBox,它有 Typeahead(自动完成)和服务器端 onTextChanged 事件绑定到同一个文本框。这两个事件没有正确同步。当我单击一些名为 "a" 的文本时,会显示 "apple" 之类的建议,而我 select "apple" 表示文本 "a" 仅在服务器(代码隐藏)OnText 已更改方法。请提供一些解决此问题的想法。
<asp:TextBox ID="txtEntityId1" name="txtEntityId1" placeholder="Search" style="width: 273px" class="nav-search-input" runat="server" onTextChanged="text_changed" AutoPostBack="true" AutoComplete="Off"></asp:TextBox>
var EntityText = document.getElementById('<%=txtEntityId1.ClientID %>');
try {
$(EntityText).typeahead({
source: entityName,
updater: function (item) {
$(EntityText).focus();
return item;
}
});
} catch (e) { alert(e.Message + " , " + e.InnerException); }
protected void text_changed(object sender, EventArgs e)
{
string EntityName = txtEntityId1.Text;
if (EntityName != "")
{
}
else
{ //Added Check for Invalid Entity Error Message.
Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", "bootbox.alert('<h4 class=\"blue\">Select Valid Entity</h4>', function() {});", true);
}
}
TextChanged 在模糊事件发生时触发,并回传值 属性 中的任何内容。使用调试器找出输入值是什么,并检查是否一切都已连接。插件可能不会更新文本框的值 属性;这些小部件有时不会按照您的预期运行,因此您必须确保输入的值正在更新。
能否在保存点击时或在客户端检测该值是否有效?
我有一个 TextBox,它有 Typeahead(自动完成)和服务器端 onTextChanged 事件绑定到同一个文本框。这两个事件没有正确同步。当我单击一些名为 "a" 的文本时,会显示 "apple" 之类的建议,而我 select "apple" 表示文本 "a" 仅在服务器(代码隐藏)OnText 已更改方法。请提供一些解决此问题的想法。
<asp:TextBox ID="txtEntityId1" name="txtEntityId1" placeholder="Search" style="width: 273px" class="nav-search-input" runat="server" onTextChanged="text_changed" AutoPostBack="true" AutoComplete="Off"></asp:TextBox>
var EntityText = document.getElementById('<%=txtEntityId1.ClientID %>');
try {
$(EntityText).typeahead({
source: entityName,
updater: function (item) {
$(EntityText).focus();
return item;
}
});
} catch (e) { alert(e.Message + " , " + e.InnerException); }
protected void text_changed(object sender, EventArgs e)
{
string EntityName = txtEntityId1.Text;
if (EntityName != "")
{
}
else
{ //Added Check for Invalid Entity Error Message.
Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", "bootbox.alert('<h4 class=\"blue\">Select Valid Entity</h4>', function() {});", true);
}
}
TextChanged 在模糊事件发生时触发,并回传值 属性 中的任何内容。使用调试器找出输入值是什么,并检查是否一切都已连接。插件可能不会更新文本框的值 属性;这些小部件有时不会按照您的预期运行,因此您必须确保输入的值正在更新。
能否在保存点击时或在客户端检测该值是否有效?