我的ListFolder
列表框控件返回0项。
我已放入testLB
列表框控件以进行测试,并且可以检索项目。
下面是代码段。
前端:
//Returned 0
<div class="tab-content">
<div id="sectionC" class="tab-pane fade in active">
<asp:ListBox runat="server" ID="listFolder" CssClass="fileHeight" Style="width: 100%;" SelectionMode="Single" ClientIDMode="Static" onclick="onListFolderClick(); ">
</asp:ListBox>
</div>
</div>
//Returned 1
<asp:ListBox ID="testLB" class="chosen" runat="server" Width="450px" Height="20px" SelectionMode="Single" ClientIDMode="Static">
<asp:ListItem>item1</asp:ListItem>
</asp:ListBox>
页面加载:
//Returned 0
Log.LogDebug("listFolder.Items.Count:" + listFolder.Items.Count, Location);
//Returned 1
Log.LogDebug("testLB.Items.Count: " + testLB.Items.Count, Location);
页面UI截图:
在左侧控件All Headers
上选择标题,并将其分别添加/删除到右侧控件Selected Headers
,listFolders
lb控件中。
最后,单击Generate Report
按钮,将检索listFolder
lb控件中的所有值。
我是否需要包括一个用于存储物品的容器,例如<asp:ListItem>
才能检索lb值?
任何帮助将不胜感激!
答案 0 :(得分:1)
首先,您必须将SelectionMode
更改为Multiple
<asp:ListBox runat="server" ID="listFolder" CssClass="fileHeight" Style="width: 100%;" SelectionMode="Multiple" ClientIDMode="Static" onclick="onListFolderClick(); ">
</asp:ListBox>
创建JavaScript方法以选择listFolder
中的所有项目:
function SelectAllItems() {
$("#listFolder").each(function() {
$("#listFolder option").attr("selected", "selected");
});
$("#listFolder").focus();
}
在“生成报告”按钮上致电SelectAllItems
:
<input type="submit" value="Generate Report" onsubmit="SelectAllItems()" />