【发布时间】:2010-09-29 19:09:09
【问题描述】:
我在一个页面上有两个 ASP.NET 下拉列表控件。第一个回调服务器并获得一个数组,该数组返回给客户端并用于通过 javascript 填充第二个下拉列表。 但是,如果我在第二个(和新填充的)下拉列表中进行选择,然后进行回发,则第二个下拉列表的选择和内容将丢失。这是一个问题,因为我需要获取选定的值并在回发后保留列表的内容。
我该如何解决这个问题?我认为这是在回发之前的某个时间点更新视图状态的问题?
我正在填充的控件是 ASP.NET 下拉列表。这是我用来填充它们的 javascript。
正在使用的代码如下(为简洁起见略有删减):
我正在填充的 ASP.NET 控件:
获取逗号分隔值列表的回调代码:
public void RaiseCallbackEvent(string eventArgument)
{
return "1, 2, 3";
}
Javascript 填充代码:
function ReceiveServerData(retValue)
{
var statesArray = retValue.split(',');
var statesList = document.getElementById('{0}');
if (statesArray.length > 0 && statesList != null)
{
for (var j = 0; j < statesArray.length; j++)
{
var newOption = document.createElement('OPTION');
statesList.options.add(newOption);
newOption.value = statesArray[j].toString().trim();
newOption.innerText = statesArray[j];
}
}
}
【问题讨论】:
-
你能添加你的 aspx 页面、javascript 代码和代码隐藏吗(在 3 个单独的代码块中会很好):)
标签: asp.net javascript drop-down-menu