duc*_*zle 1 c# asp.net twitter-bootstrap
使用此作为一个例子,我是能够得到下拉列表中的工作.不幸的是,我无法弄清楚如何确定从C#后端检查哪些复选框.我尝试更换<option>标签,<asp:CheckBox...但是下拉按钮右侧的复选框显示在一起.我也试过下面的代码:
<select class="multiselect" multiple="multiple">
<option value="cheese" id="chkCheese" runat="server">Cheese</option>
<option value="tomatoes">Tomatoes</option>
...
</select>
Run Code Online (Sandbox Code Playgroud)
我现在可以chkCheese使用上面的代码从CS文件访问,但是没有.Checked或的属性.Selected.知道为什么吗?
你<option value="cheese" id="chkCheese" runat="server">将会解决这个问题,HtmlGenericControl所以你对通过标准属性获得的内容有所限制.
一种选择是拥抱WebForms:
<asp:ListBox SelectionMode="Multiple" runat="server" CssClass="multiselect" ID="Multi" multiple="multiple" >
<asp:ListItem Value="cheese" >Cheese</asp:ListItem>
<asp:ListItem Value="tomato" >Tomato</asp:ListItem>
<asp:ListItem Value="potato" >Potato</asp:ListItem>
</asp:ListBox>
Run Code Online (Sandbox Code Playgroud)
并用一点点jquery连接起来:
<script>
$(function() {
$('.multiselect').multiselect();
});
</script>
Run Code Online (Sandbox Code Playgroud)
然后在服务器端,您可以查看所选项目
if (this.Multi.Items.FindByValue("cheese").Selected)
{
//Add cheese to pizza?
}
Run Code Online (Sandbox Code Playgroud)
当然,值得注意的是,仅仅因为您使用的是WebForms,您仍然可以使用纯HTML格式
<select class="multiselect" multiple="multiple" name="select2">
<option value="cheese" >Cheese</option>
<option value="tomatoes">Tomatoes</option>
</select>
Run Code Online (Sandbox Code Playgroud)
在服务器端,您可以查看 Request.Form["select2"]多个值将以逗号分隔的字符串显示的位置"cheese,tomatoes"