asp.net下拉框选中索引已更改事件,当单击当前所选项时不会触发

时间:2016-08-23 16:00:50

标签: asp.net vb.net drop-down-menu dropdownbox selectedindexchanged

以下是下拉框工作方式的问题。没有点击已选择项目的事件。在C#或VB后面的asp.net代码中,唯一可以触发的事件是SelectedIndexChanged。我看过类似的帖子,但我还没有按照以下方式看到这个问题。

我有一种情况,出于设计目的,我想要一个下拉列表,仅在单击该框时列出所有项目。此框将允许客户将产品添加到现有列表或创建新列表。我希望这个盒子最初状态:添加到列表。但是,当用户点击下拉列表时,下拉列表中会显示添加到列表以及原始框中的内容!

添加到列表没有任何功能,因为列表中的以下项目可以选择:创建新列表; 列出A ; 列表B ;等

我无法在显示的下拉列表中隐藏添加到列表

如果我只使用创建新列表作为列表中的第一项,我无法从下拉列表中选择创建新列表,因为它已经是选中并且不会触发SelectedIndexChanged事件。

应该有一些方法可以在单击已选择的项目时触发事件,或者应该有某种方法可以隐藏第一个项目显示在下拉列表中,以及仍然出现在列表上方的框中。 dropdownbox

我尝试使用jquery将onclick事件绑定到dropdownbox,我也尝试了onchange事件,但没有任何效果。

这是未来发布的内容还是某人有解决方法?

1 个答案:

答案 0 :(得分:0)

在这一天工作了一天半之后,我终于想出了一个解决方案。

我无法直接在列表项中添加样式,但我能够在单个列表项中添加一个类。用VB表示:

CSS

.projdropdownclass {
display: none;
}

VB

    Private Sub ProjDropDownList_DataBound(sender As Object, e As EventArgs)            Handles ProjDropDownList.DataBound
    ProjDropDownList.Items(0).Attributes("class") = "projdropdownclass"
End Sub

显示:无;隐藏下拉列表中的第一个元素。

enter image description here

我仍然认为VB和C#的下拉框中应该有一个点击事件。

希望这有助于其他人。