Javascript.RU

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

Radio как сделать неактивной в зависимости от другого radio?
У меня есть к примеру 2 radio

<input type="radio name="first" value="no""> ручная
<input type="radio name="first" value="yes"> автоматическая
И далее есть список тоже из них

<input type="radio name="sec" value="1"">
<input type="radio name="sec" value="2">
и тд до 50 допустим
А так же есть текстовый

<input type="text" name="third" >
Нужно чтобы прямо на странице делало если в начале тыкнул ручную то далее где name sec становится неактивной, а текстовый ввод активным, при нажатии на автомат наоборот уже, через script как можно сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 30.08.2017, 15:54
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,791

$('[name="first"]').change(function(){
var $t=$(this);
if(!$t.prop('checked'))
return;

$('[name="sec"],[name="third"]').attr('disabled',true);
$('[name="'+($t.val()=='no'?'third':'sec')+'"]').removeAttr('disabled');
});
Ответить с цитированием
  #3 (permalink)  
Старый 30.08.2017, 16:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

GTMichael,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
var f = $('[name="first"]'), r = $('[type="radio"]').not(f), n =  $('[name="third"]');
f.on("click", function() {
var no = this.value == "no";
r.each(function(indx, el){
      no ? $(el).prop({disabled : true, checked : false}) : $(el).removeAttr("disabled")
      });
n.prop({disabled : !no})
})
});
  </script>
</head>

<body>
<input type="radio" name="first" value="no"> ручная
<input type="radio" name="first" value="yes"> автоматическая


<input type="radio" name="sec" value="1">
<input type="radio" name="sec" value="2">


<input type="text" name="third"  disabled="disabled">
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 30.08.2017, 16:29
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<html>
<head>
</head>
<body>
	<input type="radio" name="first" value="no"> ручная
	<input type="radio" name="first" value="yes"> автоматическая

	<input type="radio" name="sec" value="1">
	<input type="radio" name="sec" value="2">

	<input type="text" name="third" >
	<script>
		document.body.onchange=function(){
			[].forEach.call(document.querySelectorAll('input[name="sec"]'), function(el){
				el.disabled = document.querySelector('input[value="no"]').checked;
		});
			document.querySelector('input[name="third"]').disabled = document.querySelector('input[value="yes"]').checked;
		};
	</script>
</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать изменения цветом на карте в зависимости от значения таблицы с БД? maks777 Общие вопросы Javascript 4 13.10.2018 13:19
Как сделать поворот DIV клонов alexgrenn Элементы интерфейса 4 18.04.2016 21:58
Как сделать неактивную ссылку? Александр141 Элементы интерфейса 2 22.02.2016 17:47
Как сделать выполнение одного JS после выполнения другого vita1ii Events/DOM/Window 2 11.01.2013 18:52
Как сделать чтобы не закрывать актиыный див при открытии другого дива dimas15 Общие вопросы Javascript 53 21.08.2012 23:27