У меня был тот же вопрос, но потом у меня был момент «духа». Вместо записи
x ~ y
напишите
y ~ x
Очевидно, что это соответствует «x» вместо «y», но отвечает «есть ли совпадение?». вопрос и простой обход DOM могут привести вас к правильному элементу более эффективно, чем цикл в javascript.
Я понимаю, что исходный вопрос был вопросом CSS, поэтому этот ответ, вероятно, совершенно не имеет значения, но другие пользователи Javascript могут споткнуться на вопрос через поиск, как я.
Я думаю, вы ищете
CheckOnClick свойство
установите для него значение true
Получает или задает значение, указывающее должен ли флажок быть переключается при выборе элемента.
Можно также использовать внешний вид флажка для CheckListBox для проверения/снятия флажок всех объектов. На той же форме добавляют флажок около CheckedListBox и называют это CkCheckAll. Добавьте событие Click для CheckBox (который я предпочитаю событию CheckChanged). Существует также кнопка (BtnAdd) рядом с CheckedListBox, который добавит все проверенные объекты к таблице базы данных. Это только включено, когда по крайней мере один объект в CheckedListBox проверяется.
private void CkCheckAll_Click(object sender, EventArgs e)
{
CkCheckAll.Text = (CkCheckAll.Checked ? "Uncheck All" : "Check All");
int num = Cklst_List.Items.Count;
if (num > 0)
{
for (int i = 0; i < num; i++)
{
Cklst_List.SetItemChecked(i, CkCheckAll.Checked);
}
}
BtnAdd_Delete.Enabled = (Cklst_List.CheckedItems.Count > 0) ? true : false;
}