как получить выбранные элементы в элементе управления checkboxlist - PullRequest
1 голос
/ 16 февраля 2011

Я использую 2 элемента управления checkboxlist, а именно chklstearnings, chklstdeductions на моей странице .aspx, и привязываю данные к списку флажков с помощью набора данных.Теперь, когда я пытаюсь получить выбранные предметы, я не могу этого сделать.

Вот мой код для привязки данных:

page_load
{

   MySqlConnection con= new MySqlConnection(System.Configuration.ConfigurationSettings.AppSettings.Get("connectionString"));
   MySqlCommand com=con.CreateCommand();
   com.CommandText="select earningordeductiondescription,earningordeductioncode from tblearninganddeduction where earningordeductioncode between 1000 and 1999";
   com.CommandType=CommandType.Text;
   DataSet ds=new DataSet();
   MySqlDataAdapter da=new MySqlDataAdapter();
   da.SelectCommand=com;
   da.Fill(ds,"earnings");
   chklstEarnings.DataSource=ds.Tables["earnings"];
   chklstEarnings.DataTextField = "earningordeductiondescription";
   chklstEarnings.DataValueField="earningordeductioncode";
   chklstEarnings.DataBind();
   MySqlCommand com1 = con.CreateCommand();
   com1.CommandText = "select earningordeductiondescription,earningordeductioncode from tblearninganddeduction where earningordeductioncode between 2000 and 2999";
   com1.CommandType = CommandType.Text;       
   da.SelectCommand = com1;
   da.Fill(ds, "deductions");
   chklstdeductions.DataSource = ds.Tables["deductions"];
   chklstdeductions.DataTextField = "earningordeductiondescription";
   chklstdeductions.DataValueField = "earningordeductioncode";
   chklstdeductions.DataBind();
}

Код при нажатии кнопки для выбранных элементов:

protected void btnsubmit_Click(object sender, EventArgs e)
{
   foreach  (ListItem ear in chklstEarnings.Items)
   {
      if (ear.Selected)
      {
         //save the earning prefarences
      }

   }

   foreach (ListItem ded in chklstdeductions.Items)
   {
      if (ded.Selected)
      {
         //save the deduction prefarences
      }
   }
}

Теперь моя проблема в том, что я получаю имяэлемент в ded и ear, но выбранное свойство - это все способы, показывающие ложное неуважение к выбору

Спасибо в adv

Ответы [ 4 ]

2 голосов
/ 16 февраля 2011

Попробуйте написать свой код при загрузке страницы на

if (!IsPostBack)
1 голос
/ 16 февраля 2011

Проверьте IsPostBack на вашей странице загрузки. Потому что, когда вы нажимаете кнопку, она перезагружает страницу.

1 голос
/ 16 февраля 2011

Флажок привязан снова, поскольку вы не поставили IsPostBack часть, поэтому он будет привязан снова и ваш выбор будет потерян

0 голосов
/ 05 апреля 2013

Установите для свойства isPostBack вашего списка флажков значение true. и напишите код, чтобы получить выбранные элементы из списка флажков в событии selectedindexlated вашего списка флажков, если вы хотите выполнить какое-либо задание, как только вы выберете элемент из списка флажков. Спасибо.

...