2016-06-28 114 views
0

我需要在一本書下添加多個作者。所以我在asp dropdownlist中使用了「Select2 Multiple」。我能夠插入數據,但在編輯模式下,我無法在下拉列表上分配多個選定的值。在asp.net中的select2多選項上設置多個選定值C#

enter image description here

我在aspx頁面下拉列表是

<asp:DropDownList ID="ddlAuthor" runat="server" multiple="multiple" data-placeholder="Select Author (s)" CssClass="form-control select2"></asp:DropDownList> 

在C#如下,但只添加一個值,我都試過了。我的c#代碼是

 foreach (DataRow row in dtAuthor.Rows) 
     { 
      ddlAuthor.Items.FindByValue(row["AUTHOR_ID"].ToString()).Selected = true; 
     } 

任何有關如何在編輯模式下從c#中設置選定的值的建議嗎?

+0

我建議你使用[下拉CheckBoxList控件(https://dropdowncheckboxes.codeplex.com/) – Shaharyar

+0

我的下拉列表將有數千個數據,所以複選框是一個問題。 Select2建議在這個意義上是有幫助的。 –

回答

1

不能使用一個DropDownList來實現這一點,使用這樣的列表框:

<asp:ListBox ID="ddlAuthor" runat="server" SelectionMode="Multiple" data-placeholder="Select Author (s)" CssClass="form-control select2"></asp:ListBox> 

而你的代碼背後將工作。

編輯:

這裏是一個代碼示例後面給你:

 //I bind my ListBox with random data 
     List<string> data = new List<string>() { "Flo", "Auteur", "Patrick","Test" }; 
     //Databind 
     ddlAuthor.DataSource = data; 
     ddlAuthor.DataBind(); 

     //Here is my selected values, i wish that this values are selected 
     List<string> selected = new List<string>() { "Flo", "Patrick" }; 

     //Foreach value in my selected list i select the proper value in my listbox 
     foreach (string row in selected) 
     { 
      ddlAuthor.Items.FindByValue(row).Selected = true; 
     } 
+0

如何在c#中設置列表框中的選定列表? –

+0

正如你在你的文章中所做的那樣,你的代碼將與列表框一起工作 – Furtiro

+0

我爲你編輯我的答案 – Furtiro

0

你在這種情況下不使用select2! 你需要使用選擇2,和你多數據推入一個變量,並將其發送給js函數或使用AJAX

$(".ddlAuthor").select2('data', youDataHere);