【发布时间】:2010-12-30 23:19:17
【问题描述】:
我在 aspx (vb.net) 中有一个下拉列表,我有 2 个下拉列表。我想根据第一个下拉列表的值显示第二个下拉列表。它们是数据互联的,所以如果在第一个选择某个记录之后,如果第二个记录有多个记录,则下拉列表应该是可见的,否则它应该保持隐藏。我确信这可以用 javascript 来完成,但我就是不知道怎么做。
谢谢
【问题讨论】:
标签: javascript vb.net drop-down-menu
我在 aspx (vb.net) 中有一个下拉列表,我有 2 个下拉列表。我想根据第一个下拉列表的值显示第二个下拉列表。它们是数据互联的,所以如果在第一个选择某个记录之后,如果第二个记录有多个记录,则下拉列表应该是可见的,否则它应该保持隐藏。我确信这可以用 javascript 来完成,但我就是不知道怎么做。
谢谢
【问题讨论】:
标签: javascript vb.net drop-down-menu
由于第二个下拉列表中的数据取决于第一个下拉列表中的选择,因此您必须进行回发。您可以在第一个下拉列表的 SelectedIndexChanged 事件中将第二个下拉列表的可见属性切换为 false。
如果您想使用 Javascript,您可以使用 AJAX 进行回发。
【讨论】:
我假设您可以让数据填充第二个下拉列表。如果没有,您可以使用 AJAX 使用 javascript 来做到这一点。您也可以通过回发来做到这一点(容易得多,但对最终用户来说更糟)。
这里是如何将第二个下拉列表设置为不可见或可见:它的样式属性。
隐藏:
display: none;
或可见:
display: block;
【讨论】:
此链接似乎正是您所期待的,尽管有点复杂。
我个人会使用AJAX更新面板来实现效果。
【讨论】:
另一种方法是使用 jQuery 和 JSON 来构建级联下拉列表。有一篇关于如何实现这一点的好帖子:http://www.codedigest.com/Articles/jQuery/224_Building_Cascading_DropDownList_in_ASPNet_Using_jQuery_and_JSON.aspx
【讨论】: