Я пытаюсь установить / снять все флажки, используя jQuery. Теперь, установив / сняв флажок родительского флажка, все дочерние флажки выбираются / отменяются, а текст родительского флажка меняется на checkall / uncheckall.
Теперь я хочу заменить родительский флажок кнопкой ввода и изменить текст также на кнопке, чтобы поставить галочку / снять галочку. Вот код, может кто-нибудь, пожалуйста, настроить код?
$( function() {
$( '.checkAll' ).live( 'change', function() {
$( '.cb-element' ).attr( 'checked', $( this ).is( ':checked' ) ? 'checked' : '' );
$( this ).next().text( $( this ).is( ':checked' ) ? 'Uncheck All' : 'Check All' );
});
$( '.cb-element' ).live( 'change', function() {
$( '.cb-element' ).length == $( '.cb-element:checked' ).length ? $( '.checkAll' ).attr( 'checked', 'checked' ).next().text( 'Uncheck All' ) : $( '.checkAll' ).attr( 'checked', '' ).next().text( 'Check All' );
});
});
<input type="checkbox" class="checkAll" /> <b>Check All</b>
<input type="checkbox" class="cb-element" /> Checkbox 1
<input type="checkbox" class="cb-element" /> Checkbox 2
<input type="checkbox" class="cb-element" /> Checkbox 3
Ответы:
Попробуй это :
DEMO
источник
.click()
.attr()
иremoveAttr()
не должны использоваться с атрибутом «checked». КакremoveAttr()
будет удалить атрибут вместо того, чтобы установить егоfalse
..prop('checked', true)
или.prop('checked', false)
следует использовать вместо этого, как описано в ответе @ richard-garside.Это самый короткий путь, который я нашел (нужен jQuery1.6 +)
HTML:
JS:
Я использую .prop, так как .attr не работает для флажков в jQuery 1.6+, если вы явно не добавили проверенный атрибут в свой входной тег.
Пример-
источник
Попробуй это:
HTML
JavaScript
DEMO
источник
Html
Javascript
источник
Решение для переключения флажков с помощью кнопки, совместимой с jQuery 1.9+, где toogle-event больше не доступен :
DEMO
источник
Попробуй это:
e
это событие, которое генерируется, когда вы это делаетеclick
, иe.target
это элемент clicked (.checkAll
), поэтому вам нужно только установить свойствоchecked
элементов с классом,.cb-element
как у элемента с классом .checkAll`.PS: извините за мой плохой английский!
источник
$('#all_news_items').on('click', function(e) { $('.news-item-option').prop('checked', $(e.target).prop('checked')); });
без галочки функции, взаимодействующие с другими элементами формы, так что вы можете легко добавить новую галочку:$('#all_specializations').on('click', function(e) { $('.specialization-option').prop('checked', $(e.target).prop('checked')); });
Вы можете попробовать это
Класс
.checkAll
это флажок, который контролирует массовое действиеисточник
Согласовано с коротким ответом Ричарда Гарсайда, но вместо того чтобы использовать
prop()
в$(this).prop("checked")
вы можете использовать родную JSchecked
свойство флажка , как,источник
Установите / снимите флажок Все с промежуточным свойством, используя jQuery
Получить отмеченные элементы в массив с помощью getSelectedItems () метод
Список флажков источника Установите / снимите флажок Все с неопределенной основной проверкой
HTML
JQuery
источник
Лучшее решение здесь Check Fiddle
источник
Приведенный ниже код будет работать, если пользователь установит все флажки, тогда флажок «все» будет установлен, а если пользователь отменит выбор одного флажка, флажок «все» будет снят.
источник
попробуй это
источник
Бесстыдная самореклама: для этого есть плагин jQuery .
HTML:
JS:
...и вы сделали.
http://jsfiddle.net/mattball/NrM2P
источник
попробуй это,
источник
Вы можете использовать
this.checked
для проверки текущего состояния флажка,Показать фрагмент кода
источник
Попробуйте код ниже, чтобы установить / снять все флажки
Попробуйте эту демонстрационную ссылку
Есть также другой короткий способ сделать это, пример проверки ниже. В этом примере отметьте / снимите флажок со всех флажков, если флажок установлен или нет, тогда будут проверены все, и если не все будут сняты
источник
Я знаю, что этот вопрос старый, но я заметил, что большинство людей используют флажок. Принятый ответ использует кнопку, но не может работать с несколькими кнопками (например, одна вверху страницы, одна внизу). Итак, вот модификация, которая делает оба.
HTML
JQuery
Это позволит вам иметь столько кнопок, сколько вы хотите, для изменения значений текста и флажков. Я включил
e.preventDefault()
звонок, потому что это предотвратит переход страницы наверх из-заhref="#"
детали.источник
источник
Вот ссылка, которая используется для установки и снятия флажка родительского, и все дочерние флажки выбираются и отменяются.
jquery check снимите все флажки, используя Jquery с демо
источник
источник
добавьте это в свой блок кода или даже нажмите на кнопку
источник
источник
Отметьте все с помощью снятия отметки / проверки контроллера, если все пункты проверены / не проверены
JS:
HTML:
источник