在.Net客户端更改DropDownList的值

时间:2010-12-10 19:27:15

标签: c# asp.net client-side

假设我无法修改站点的代码隐藏文件(它是一个已编译的站点),我遇到了一个我只能通过完全重新编译和重新部署完全修复的错误。不幸的是,我们处于严格的发布时间表中,我们无法再部署11天。

错误是我正在检查下拉列表以确保所选的值不是“-1”。但是,我没有使用drp.SelectedItem.Value,我使用了drp.Items [0] .Value。总骷髅在我身上移动。底线是drp.Items [0] .Value总是-1,所以他们的页面给用户一个错误,说明他们需要为该下拉选择一个选项。他们真正拥有,但我的错误是不让他们继续这个过程。

因为我是个白痴。

所以,我正在尝试确定是否可以在客户端将第一个drp项的值替换为该下拉列表的实际选择值。

我已经将这一切都用于客户端,但是当回发表单时,该值仍然是从代码填充的值,意思是“-1”。

我确定这是因为加载了下拉列表并且所有值都保存在ViewState中。

有人能想到.Net友好的解决方案吗?我真的希望有一个。

1 个答案:

答案 0 :(得分:0)

不幸的是,当浏览器进行回发时,所有控件都使用默认值重新创建,然后从viewstate和post值更新它们的值。 DropDownList控件不会从另一个值集合更新ListItems的值。如果我们通过javascript在客户端更改ListItem的值,在服务器端我们的控件将在其ListItem集合中包含默认值,在我们的例子中它是-1。

祝你好运, 迪马。