在我的应用程序中,我创建了一个ajax autocompelete扩展文本框。一旦用户选择值,我想将该值插入到我的下拉列表中。 用于这一目的的代码是:通过javascript更改dropdownlist的值后,asp.net中dropdownlist的值消失
function GetCode(source, eventArgs) {
var hfield = $get('<%=this.HiddenID.ClientID%>');
hfield.value = eventArgs.get_value();
//hfield has the value selected in the autocomplete text box
var abc = document.getElementById('<% =DropDownList2.ClientID %>');
for (var i = 0; i < abc.length ; i++) {
alert(abc.options[i].value);
if (abc.options[i].value == hfield.value) {
abc.options[i].selected = true;
break;
}
}
}
这里的问题是:我的价值没有在下拉列表显示。 当我尝试调试代码时,我意识到值确实出现在下拉列表中,但当此代码退出时,该值将从下拉列表中消失。
我不知道为什么值正在消失!请帮忙!谢谢!
好吧,现在我明白了!但是,我应该怎么做才能使我的价值观不会消失? – Ankita
做法是这样的:@ speti43建议:添加一个Hidden元素,并将其值设置为下拉列表中的所选值。回发之后,将这个值自己恢复到下拉列表中。您基本上必须手动管理状态,不幸的是: -/ – Icarus