ListBox 複選傳值

Items將取得所有項目名稱
GetSelectedIndices將取得索引值
SelectedValue取得value,但只能取一個,沒有多選直接取value的方法。
複選時需要Selected逐項判斷

-----------------------------------------------------------------------------------------------------
Default.aspx
學校總類:<asp:ListBox ID="type" runat="server" ontextchanged="class_TextChanged"
            SelectionMode="Multiple">
            <asp:ListItem Value="1">普通大學</asp:ListItem>
            <asp:ListItem Value="2">科技大學</asp:ListItem>
            <asp:ListItem Value="3">醫藥大學</asp:ListItem>
            <asp:ListItem Value="4">教育大學</asp:ListItem>
            <asp:ListItem Value="5">體育大學</asp:ListItem>
            <asp:ListItem Value="6">管理學院</asp:ListItem>
            <asp:ListItem Value="7">技術學院</asp:ListItem>
            <asp:ListItem Value="8">藝術類</asp:ListItem>
            <asp:ListItem Value="9">軍警累</asp:ListItem>
        </asp:ListBox>


get.aspx
<asp:Label ID="show" runat="server" Text="Label"></asp:Label>



Default.cs
//取得所有項目名稱,須注意Items是ListItemCollection型態
 Session["type"] = type.Items;                  


get.cs

ListItemCollection  listbox = Session["type"] as ListItemCollection ;
 string ItemsName = "";

            for (int i = 0; i < listbox.Count; i++)                       //取得項目總長度
            {
                if (listbox[i].Selected)                                         //檢查是否有選取
                    ItemsName = ItemsName + listbox[i] + "@";   //取得項目名稱,
                                                                                            //若要取得value可用listbox[i].value
            }
show.Text = ItemsName;




留言

這個網誌中的熱門文章

SQL SEVER備份與還原遭遇問題

asp.net頁面間傳值