【发布时间】:2011-03-01 20:14:56
【问题描述】:
嗨 我需要验证一个文本框值,以便仅接受关联的 autocompleteextender 控件的完成列表中的值。
我在 asp.net 2.0 上使用 ajaxtoolkit(版本 20229)。
现在我使用下面的代码来验证文本框;如您所见,我有一个隐藏字段来保留所选键。如果用户输入一个值而不从列表中选择它,则隐藏字段设置为 0。
你有什么想法吗? 谢谢
/**** Javascript 代码
function AutoCompleteItemPopulated(source, eventArgs)
{
var assocHiddenField = document.getElementById( source.get_element().id+'_hidden');
assocHiddenField.value=0;
}
function AutoCompleteItemSelected(source, eventArgs)
{
var assocHiddenField = document.getElementById( source.get_element().id+'_hidden');
assocHiddenField.value = eventArgs.get_value();
}
/*****CODEBEHIND 代码用于填充自动完成列表
[System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
public static string[] getStrada(string prefixText, int count, string contextKey)
{
System.Collections.Generic.List<string> items = new System.Collections.Generic.List<string>();
DataSetIncidentiTableAdapters.StradarioTableAdapter adapter = new DataSetIncidentiTableAdapters.StradarioTableAdapter();
DataSetIncidenti.StradarioDataTable dtStrade = adapter.GetStrade(contextKey, prefixText);
foreach (DataSetIncidenti.StradarioRow strada in dtStrade.Rows)
{
items.Add(AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(strada.DenominazioneCompletaVia, strada.IdStrada.ToString()));
}
return items.ToArray();
}
【问题讨论】:
标签: asp.net autocompleteextender