1

我有一个基于另一个下拉列表的选定值填充的下拉列表。主下拉列表是 dlJobName。它包含所有活动作业的列表。第二个下拉列表是 dlStage。这包含与 JobName 相关的不同阶段值。这是填充 dlStage 下拉列表的查询。

SELECT DISTINCT [AnnotationDate] as Annotation_Date FROM [vw_GridviewSource] WHERE ([Name] = @Name)

在此代码中,AnnotationDate 不是日期字段,而是文本字段。@Name 是一个变量,等于从 dlJobName 列表中选择的值。

这是我的困境。当我为 dlJobName 创建 selected_index_change 事件时,在更新使用这两个下拉列表的 gridview 之前,我需要将 dlStage 更新为仅可用值。发生的情况是 dlStage 列表未更新,并且下拉列表中的值不适用于新的 JobName。有没有办法强制查询与选定的索引更改事件一起在 dlStage 下拉列表上运行?这将导致 gridview 至少填充并且不会出错。

我可以提供任何必要的额外代码。

4

3 回答 3

0

设置属性
dlJobName.AutoPostBack="true"
这将使 SelectedIndexEvent 在主下拉列表的选定索引发生更改时触发。
在该 selectedIndexChanged 事件中加载第二个 DropdownList。这是一个示例,
http://asp-net-example.blogspot.in/2009/03/how-to-use-dropdownlist-autopostback.html
希望您的问题得到解决,如果仍然存在,请粘贴您的代码段。

于 2013-11-12T15:55:17.243 回答
0

我认为您没有设置下拉列表的 AutoPostBack="true"。如果问题仍然存在,请输入您的 HTML 和 cs 代码以获得适当的帮助。

于 2013-11-12T15:37:57.373 回答
0

嗨,也许像其他用户评论一样,您需要从下拉列表中转到属性,搜索 AutoPostBack 并将 False 更改为 True。不要忘记清理你的下拉列表

DropDownList.Items.Clear() (VB.NET) DropDownList.Items.Clear(); (C#)

再次清理您的下拉列表收费后,您绑定下拉列表的方法

于 2013-11-12T15:45:08.830 回答