Javascript.RU

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

выполнение ф-ии при изменении состояния radio
Есть форма, состоящая из группы radio.
Как сделать что бы при изменении состояния radio выполнялась нужная ф-ия?
Пробовал onChange. Но тогда функция срабатывает только когда выбираешь данный radio. Когда же checked становится false функция не срабатывает. Т.е. мне нужно что бы при выборе другого radio тоже срабатывала функция, которая "висит" на первом radio.
Ответить с цитированием
  #2 (permalink)  
Старый 24.06.2009, 12:43
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,233

[telepatemod]
может быть стоит прописать всем радиокнопкам одинаковое имя?
[/telepatemod]
Ответить с цитированием
  #3 (permalink)  
Старый 24.06.2009, 12:52
Интересующийся
Отправить личное сообщение для MaxB Посмотреть профиль Найти все сообщения от MaxB
 
Регистрация: 24.06.2009
Сообщений: 29

Сообщение от Gvozd Посмотреть сообщение
[telepatemod]
может быть стоит прописать всем радиокнопкам одинаковое имя?
[/telepatemod]
у всех name одинаковый
Ответить с цитированием
  #4 (permalink)  
Старый 24.06.2009, 13:13
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,233

повесить один и тот же обработчик
<head>
<title>Регистрация</title>
</head>
<body>
<form name='form1'>
<input type="radio" name="drink" value="rad1"> Пиво<Br>
<input type="radio" name="drink" value="rad2"> Чай<Br>
<input type="radio" name="drink" value="rad3"> Кофе
</form>
<script type="text/javascript">
radios=document.getElementsByName('drink');
var ch_radio=function()
	{
	console.log(this.value);
	}
for(var i=0;i<radios.length;i++)
	radios[i].onchange=ch_radio;
</script>

</body>
Ответить с цитированием
  #5 (permalink)  
Старый 24.06.2009, 13:16
Интересующийся
Отправить личное сообщение для MaxB Посмотреть профиль Найти все сообщения от MaxB
 
Регистрация: 24.06.2009
Сообщений: 29

в том то и дело что мне нужно что бы ф-ия срабатывала только при изменении состояния первого radio
Ответить с цитированием
  #6 (permalink)  
Старый 24.06.2009, 13:24
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,233

<head>
<title>Регистрация</title>
</head>
<body>
<form name='form1'>
<input type="radio" name="drink" value="rad1"> Пиво<Br>
<input type="radio" name="drink" value="rad2"> Чай<Br>
<input type="radio" name="drink" value="rad3"> Кофе
</form>
<script type="text/javascript">
var radios=document.getElementsByName('drink');
var old_checked=null;
var ch_radio=function()
	{
	if(this.value==radios[0].value || old_checked==radios[0].value)
		{
		alert(radios[0].checked);
		}
	old_checked=this.value;
	}
for(var i=0;i<radios.length;i++)
	{
	radios[i].onchange=ch_radio;
	if(radios[i].checked)
		old_checked=radios[i].value;
	}
</script>

</body>

PS кстати, в опере onchange вызывается как для получения значения у радиокнопки, так и при потере
обработайте этот момент аккуратно

Последний раз редактировалось Gvozd, 24.06.2009 в 13:26.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Координаты DIV(объекта) при центровке и изменении свойств экрана andrys2007 Элементы интерфейса 1 10.03.2009 19:55
Подвисание IE при динамическом изменении контента Taddy_Bear Общие вопросы Javascript 4 11.12.2008 20:12