Получение значения выбранных флажков из списка флажков, созданного в c#

#c# #jquery #css

#c# #jquery #css

Вопрос:

Это должно быть просто для всех, кто делал это ранее, извиняюсь, если на этот вопрос уже был дан ответ, но, похоже, я не могу его найти, если это так.

Я создаю решение на c # vb.net и при добавлении элементов списка флажков я пытаюсь применить один и тот же класс к каждому из них. это позволит мне манипулировать другим полем на основе того, что проверяется конечным пользователем.

Я попробовал 2 следующих фрагмента кода. Из того, что я прочитал, они оба должны работать, но когда я проверил это в dom explorer, он не добавил класс :/

фрагмент 1

         private void GetProjectManagers()
    {
        if (!IsPostBack)
            using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["tablename"].ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand())

                {

                    cmd.CommandText = "SELECT FullName,PrimaryID FROM TBL_ProjectManagers ORDER BY FullName ASC;";
                    cmd.Connection = connection;
                    connection.Open();
                    using (SqlDataReader sdr = cmd.ExecuteReader())
                    {
                        while (sdr.Read())
                        {
                            ListItem item = new ListItem();
                            item.Text = sdr["FullName"].ToString();
                            item.Value = sdr["PrimaryID"].ToString();
                            cbProjectManager.Items.Add(item);
                            cbProjectManager.Attributes.Add("class","ProjectManagerCheckbox");
                        }
                    }
                    connection.Close();
                }
            }

    }
  

фрагмент 2

         private void GetProjectManagers()
    {
        if (!IsPostBack)
            using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["tablename"].ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand())

                {

                    cmd.CommandText = "SELECT FullName,PrimaryID FROM TBL_ProjectManagers ORDER BY FullName ASC;";
                    cmd.Connection = connection;
                    connection.Open();
                    using (SqlDataReader sdr = cmd.ExecuteReader())
                    {
                        while (sdr.Read())
                        {
                            ListItem item = new ListItem();
                            item.Text = sdr["FullName"].ToString();
                            item.Value = sdr["PrimaryID"].ToString();
                            item.Attributes.Add("class", "ProjectManagerCheckbox");
                            cbProjectManager.Items.Add(item);
                        }
                    }
                    connection.Close();
                }
            }

    }
  

Спасибо

elboffor

::редактировать :: спасибо, что указали в комментариях, что CssClass — это то, что мне нужно для добавления класса, теперь мой код jQuery срабатывает. но по какой-то причине он не получает значения отмеченных флажков. что я делаю, так это пытаюсь объединить значения всех флажков в одно поле текстового поля.

вот мой jquery

             $(".ProjectManagerCheckbox").on("change", function () {
            var compiled = ($(".ProjectManagerCheckbox:checkbox:checked").map(function () {
                return this.value;
            }).get().join(", "));
            alert(compiled);
            $("#tbCompiledProjectManager").val(compiled);
  

Комментарии:

1. Почему существует VB.NET тег? Ваш код написан на c #.

2. это мой приятель-новичок, я начал писать в этом позавчера и начал с vb.net шаблон в Visual studio и выбрал c # в качестве своего языка.

3. Я отлично вижу класс. Я не уверен, хотите ли вы добавить класс к элементу управления или его элементам, для последнего вы должны использовать cbProjectManager. Элементы [ItemIndex]. Атрибуты. Добавить(«class», «ProjectManagerCheckbox»);

4. по сути, я хочу, чтобы каждый элемент checkbox, который он генерирует, имел класс, такой как <input type=’checkbox’ class=’ProjectManagerCheckbox’ value=’checkboxValue’ /> поэтому, когда он отмечен, я могу получить его значение в событии jquery и использовать его в функции в другой части страницы. Когда я проверяю его в DOM explorer, у него нет связанного с ним класса.

5. Можете ли вы поделиться своим css , возможно? Также вы можете установить класс CheckBoxList вместо каждого элемента… Вы уверены, что хотите установить класс, а не стиль вместо этого? Например (установка класса в списке флажков): <asp:CheckBoxList ID="chkboxlist" runat="server" CssClass="ProjectManagerCheckbox" />