【发布时间】:2015-12-22 14:24:14
【问题描述】:
我有一个包含在 HTML 下拉列表中的两个复选框列表的 aspx 页面。
其中一个是用 HTML 编写的,并且显示 \ 根据检查的内容和未检查的内容将列隐藏在数据表中。
另一个是带有 asp.net 复选框列表控件的下拉菜单,这样我就可以根据所选选项轻松地将值传递回数据库,而无需查看 Request.Form("...")。
我希望解决的一个问题是如何在单击复选框项目后保持下拉菜单处于打开状态。两个列表\下拉列表中都会出现相同的行为,因此希望它可以成为两者的单一解决方案。
我建立一个列表的代码是这样的
<div class="row" style="float: right; padding-right: 15px">
<div class="col-lg-12">
<div class="button-group">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<span class="glyphicon glyphicon-list-alt"></span><span class="caret"></span>
</button>
<ul class="dropdown-menu">
<asp:PlaceHolder ID="ColSelectorPlaceHolder" runat="server"></asp:PlaceHolder>
</ul>
</div>
</div>
</div>
然后列表被构建并传递回这里的占位符
Dim html As New StringBuilder()
For value As Integer = 0 To dictofClassAndCol.Count
If (value = dictofClassAndCol.Count) Then
Exit For
End If
Dim item = dictofClassAndCol.ElementAt(value)
Dim key As String = item.Key
Dim val As String = item.Value
Dim line = String.Format("<li style='padding-left: 10px'><label class='small' tabindex='-1'><input type='checkbox' checked='true' value='{0}'/>{1}</label></li>", key.Replace(" ", ""), val)
html.AppendLine(line)
Next
Return html
另一个是这样构建的
<div class="btn-group" style="padding-top: 5px">
<a class="btn btn-default dropdown-toggle" data-toggle="dropdown" href="#">Report Status <span class="caret"></span></a>
<ul class="dropdown-menu" style="padding-left: 10px">
<asp:PlaceHolder ID="statusSelectorPlaceHolder" runat="server"></asp:PlaceHolder>
<asp:CheckBoxList ID="statuscblist" runat="server">
</asp:CheckBoxList>
</ul>
</div>
然后物品就这样堆积起来
If Page.IsPostBack = False Then
For Each item In _dictOfStatus
Dim status As New ListItem
status.Value = item.Value
status.Text = item.Key
status.Selected = True
statuscblist.Items.Add(status)
Next
End If
任何和所有的帮助表示赞赏。
【问题讨论】:
标签: javascript asp.net .net vb.net drop-down-menu