0

当使用 javascript/ajax 根据 ComboBox A 中的选择重新填充 ComboBox B 中的选项时,选择 B 中具有索引 > 原始索引集的项目会导致错误:

“'...' 有一个无效的 SelectedIndex,因为它不存在于项目列表中。参数名称:值”

显然,无论 javascript 做什么,组合框仍然链接回它们的原始数据源,所以当它真的是 y 时,它认为第 1 项是 x,或者第 2 项不存在,这是有问题的。至少这就是我从类似帖子中得到的。我没有得到的是解决方案,尽管...

4

1 回答 1

0

如果您的 ComboBox B 最初是通过数据绑定填充的,那么您的 ViewState 将反映这一点,并且您的 ComboBox B 将在回发时从 ViewState 中的信息中重新填充。因此,大于原始项目数的 SelectedIndex 会让人感到困惑。

(ComboBoxes 的内容不会回发:只是选定的项目。所以它不会知道你在客户端做了什么。)

可能的选项包括:使用 UpdatePanel 更新您的组合框而不刷新整个页面,或使您的 ComboBox B 成为普通 HTML select,仅从客户端填充它(通过 Ajax?)并从服务器上的 Forms 集合中获取其值回发后的一面。

于 2013-02-22T22:22:47.657 回答