У меня есть форма с кнопкой «Выбрать все» и несколько флажков. я хочу, чтобы он установил все флажки, когда пользователь нажимает кнопку «Выбрать все».
есть ли в jquery элегантный способ сделать это?
РЕДАКТИРОВАТЬ # 2: я выделил проблему до этого кода; style = "display: none;". если я удаляю этот код, он работает нормально. есть идеи?
РЕДАКТИРОВАТЬ: ответы ниже работают в моей тестовой форме, но кнопка в этом случае находится внутри формы, которая находится внутри div, который отображается только как часть simpledialog.show (). в этом случае, по какой-то причине, когда я нажимаю на кнопку, я не вижу ничего, что происходит:
JavaScript:
<script type="text/javascript">
$(document).ready(function() {
$('#sdHc3').simpleDialog({
showCloseLabel: false,
open: function() {
$('#checkboxStatus').html('');
},
close: function() {
var c = [];
$('#checkboxForm :checkbox:checked').each(function() {
c.push($(this).val());
});
$('#checkboxStatus').html(' Checked <b>' + c.join(', ') + '</b>.').show();
}
});
});
<script type="text/javascript">
$(function() {
$('#selectAll').click(function() {
var select_all = (this.value === 'Select All');
$(':checkbox').attr('checked', select_all);
this.value = (select_all) ? 'Deselect All' : 'Select All';
});
});
корпус:
<div style="display: none;" class="scrollableDiv" id="simpleDialog3">
<h3>DEMO3</h3>
<form id="checkboxForm">
<input type="button" id="selectAll" value="TT" />
<input type="checkbox" class="chckbx" value="1" /><br />
<input type="checkbox" class="chckbx" value="1" /><br />
</form>
<p>
<a href="#" class="close">Close</a></p>
</div>
есть идеи, почему это не сработает в этом случае?