Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.11.2016, 10:24
Интересующийся
Отправить личное сообщение для nina_ Посмотреть профиль Найти все сообщения от nina_
 
Регистрация: 26.06.2016
Сообщений: 29

Как убрать у одного checkbox checked и присвоить тому на который кликнула
Добрый день
Помогите, пожалуйста, разобраться почему не работает след.код:
есть div с checkbox-ами и первый checkbox в результате работы php скрипта имеет атрибут checked="checked":
<div class="choose_day">
<div class="checkbox-row">
<input type="checkbox" name="check" id="1" value="2017-06-01" checked="checked"><label for="1">2017-06-01</label>
</div>
<div class="checkbox-row"><input type="checkbox" name="check" id="2" value="2017-06-11"><label for="2">2017-06-11</label></div>
<div class="checkbox-row"><input type="checkbox" name="check" id="3" value="2017-06-21"><label for="3">2017-06-21</label></div>
<div class="checkbox-row"><input type="checkbox" name="check" id="4" value="2017-07-01"><label for="4">2017-07-01</label></div>
<div class="checkbox-row"><input type="checkbox" name="check" id="5" value="2017-07-11"><label for="5">2017-07-11</label></div>
</div>


Как правильно написать код, чтобы по клику на другой checkbox,
атрибут checked="checked" у предыдущего выбранного checkbox-а снимался?
$(".choose_day input:checkbox:enabled").click(function() {
    var top = $(this).parent().parent();
    var allCheckboxes = top.find("input:checkbox:enabled");
    allCheckboxes.removeAttr('checked');
    $(this).attr('checked', 'checked');
});

Данный код не работает, но я могу понять причину.
Ответить с цитированием
  #2 (permalink)  
Старый 14.11.2016, 10:43
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от nina_
Как убрать у одного checkbox checked и присвоить тому на который кликнула
Для этого есть "радио кнопки"...
Ответить с цитированием
  #3 (permalink)  
Старый 14.11.2016, 11:12
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от nina_
но я могу понять причину
Для понятия причины нужно тестировать свой код "по шагам"...

Мой вариант.

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
	$('.checkbox-row :checkbox').change(function(){
		if (!this.checked) return;
		$('.checkbox-row :checked').not(this).prop('checked',false);
	});
});
</script>
</head>
<body>
<div class="choose_day">
	<div class="checkbox-row">
		<input type="checkbox" name="check" id="1" value="2017-06-01" checked="checked"><label for="1">2017-06-01</label>
	</div>
	<div class="checkbox-row">
		<input type="checkbox" name="check" id="2" value="2017-06-11"><label for="2">2017-06-11</label>
	</div>
	<div class="checkbox-row">
		<input type="checkbox" name="check" id="3" value="2017-06-21"><label for="3">2017-06-21</label>
	</div>
	<div class="checkbox-row">
		<input type="checkbox" name="check" id="4" value="2017-07-01"><label for="4">2017-07-01</label>
	</div>
	<div class="checkbox-row">
		<input type="checkbox" name="check" id="5" value="2017-07-11"><label for="5">2017-07-11</label>
	</div>
</div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 14.11.2016, 11:44
Интересующийся
Отправить личное сообщение для nina_ Посмотреть профиль Найти все сообщения от nina_
 
Регистрация: 26.06.2016
Сообщений: 29

Спасибо вам за помощь.
Не могла сообразить как присвоить атрибут выбранному checkbox.
Ответить с цитированием
  #5 (permalink)  
Старый 14.11.2016, 13:27
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от nina_
как присвоить атрибут
В моем примере работа идет не с атрибутом, а со свойством.
http://javascript.ru/tutorial/dom/attributes
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как с помощью Javascript взять величину с одного блока и присвоить её другому Lons Общие вопросы Javascript 7 21.05.2016 00:07
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29