Я пытаюсь заставить пользователя проверить 3 флажка из цикла в php. Я не получаю ошибок, но это не ограничивает количество выбора. Jquery
$(document).ready(function() {
$('.single-checkbox').on('change', function() {
var noChecked = 0;
$.each($('.single-checkbox'), function() {
if ($(this).is(':checked')) {
noChecked++;
}
});
if (noChecked >= 3) {
$.each($('.single-checkbox'), function() {
if ($(this).not(':checked').length == 1) {
$(this).attr('disabled', 'disabled');
}
});
} else {
$('.single-checkbox').removeAttr('disabled');
};
});
});
PHP :
$query="SELECT course.name FROM course";
$results=mysqli_query($dbhandle,$query) or die(mysqli_error($dbhandle));
while ($rows=mysqli_fetch_assoc($results)) {
print("<td><input class='single-checkbox' type='checkbox' id='ch' /></d> <td>".$rows['name']."</td>");
Все работает, но ограничение не работает. Заранее спасибо.
2 ответа
Просто проверьте количество отмеченных полей; если он слишком высок, не позволяйте ставить галочку!
$(".single-input").on("change", function() {
if (this.checked && $(".single-input:checked").length > 3) {
this.checked=false;
return false;
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="single-input" /><br/>
<input type="checkbox" class="single-input" /><br/>
<input type="checkbox" class="single-input" /><br/>
<input type="checkbox" class="single-input" /><br/>
<input type="checkbox" class="single-input" /><br/>
<input type="checkbox" class="single-input" /><br/>
Я предлагаю вам проверить, действительно ли JQuery получает объект HTML, в вашем коде вы используете $ (this), что было бы правильно, возможно, с помощью группы флажков вы можете попробовать для $ ("# checkboxId"), чтобы условие IF удовлетворяется и увеличивает свою переменную счетчика. Узнать больше: Проверьте, установлен ли флажок с помощью jQuery
Похожие вопросы
Связанные вопросы
Новые вопросы
jquery
jQuery - это библиотека JavaScript, рассмотрите возможность добавления тега JavaScript. jQuery - это популярная кросс-браузерная библиотека JavaScript, которая облегчает прохождение Document Object Model (DOM), обработку событий, анимацию и взаимодействие AJAX, сводя к минимуму расхождения между браузерами. Вопрос с тегом jQuery должен быть связан с jQuery, поэтому jQuery должен использоваться в рассматриваемом коде, и в вопросе должны быть как минимум элементы, связанные с использованием jQuery.