Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
SilverFrost
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 6
#1

Помогите с включением радиобоксов, если выбран чекбокс - JavaScript

25.08.2011, 15:50. Просмотров 1465. Ответов 7
Метки нет (Все метки)

У меня генерится в циле N чекбоксов и под каждым из них есть два радиобокса:
Код
<input type='checkbox' name='month_1_'.$my_day.'' value=''.$my_day.'' OnClick='update_schedule(this);'>

Утро   Вечер

<input type='radio' name='month_1_time_'.$my_day.'' value='M' checked disabled>
    <input type='radio' name='month_1_time_'.$my_day.'' value='E' disabled></td>
$my_day = $my_day+1;
Мне нужно чтобы при выборе чекбокса включались радиобоксы для чего я написал такую функцию:
Код
function update_schedule(x) {
  my_val = x.value;
  if (eval('document.main_form.month_1_'+my_val+'.checked == true'))
    eval('document.main_form.month_1_time_'+my_val+'.disabled = false');    
  else if (eval('document.main_form.month_1_'+my_val+'.checked == false'))
    eval('document.main_form.month_1_time_'+my_val+'.disabled = true');
}
Но к сожалению почему-то не работает, при этом эксплорер не выдает никаких ошибок. Подскажите пожалуйста, что я сделал не так?
http://www.cyberforum.ru/javascript/thread1943322.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.08.2011, 15:50
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Помогите с включением радиобоксов, если выбран чекбокс (JavaScript):

Скрывать select если в другом select выбран определенный value
допустим есть форма &lt;form&gt; &lt;select id=&quot;i1&quot; name=&quot;price1&quot;&gt; &lt;option...

Показать div, если выбран хотя бы 1 его дочерний checkbox
В диве находятся дополнительные чекбоксы поиска, по у молчанию он скрыт,...

Если Выбран Вариант 1, то сообщение 1 стираем-пишем сообщение 2
Здравствуйте, помогите написать скрипт вида: Сообщение 1 Возможные...

Добавить проверку если не выбран ни plan и plan2.
Добрый день, дорогие форумчане! Подскажите, пожалуйста, как наложить проверку...

Скрыть чекбокс, если нету данных
Есть вопросик. Вот через это выводится данные.. &lt;?php if (...

7
freem
25.08.2011, 15:58 #2
Да может быть потому что код не читабельный вовсе...???
не стоит ичпользовать eval повсюду это есть bad design.

Вот собсно отсюда и проблемы...по вставляйте алертов я уверен что у вас имена не верно передаються/генеряться...
bazile
65 / 41 / 68
Регистрация: 15.03.2007
Сообщений: 6,909
25.08.2011, 16:19 #3
Код
function update_schedule(x)
{
    var radio2 = x.form.elements['month_1_time_'+x.value];
    radio2[0].disabled = !x.checked;
    radio2[1].disabled = !x.checked;
}
У тебя код не работал т.к. ты пытался обратиться к двум radiobutton как к одному, а так нельзя.

eval же надо использовать только в случае крайней необходимости. Это очень медленная фукция. У меня был случай когда код переписанный без использования eval начал работать в 3000 раз быстрее.
0
SilverFrost
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 6
25.08.2011, 16:25  [ТС] #4
Уже все) - проблему решил через массив элементов формы!
0
bazile
65 / 41 / 68
Регистрация: 15.03.2007
Сообщений: 6,909
25.08.2011, 16:26 #5
Добавлю еще, что случай с 3000 ускорением скрипты был в ситуации когда eval многократно вызывался внутри цикла. Одиночное его применение так сильно тормозить не будет.
0
SilverFrost
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 6
25.08.2011, 16:26  [ТС] #6
Ой главное забыл! Всем спасибо за ответы!!!))
0
SilverFrost
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 6
25.08.2011, 16:35  [ТС] #7
2 bazile
Ты крут!!! Я похожим образом сделал, но код куда длинее получился, а в три строчки это супер - респект ОГРОМНЫЙ!
0
bazile
65 / 41 / 68
Регистрация: 15.03.2007
Сообщений: 6,909
25.08.2011, 17:04 #8
Пользуйся на здоровье
0
25.08.2011, 17:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.08.2011, 17:04
Привет! Вот еще темы с решениями:

Если чекбокс отмечен, то добавляет в реестр, если не отмечен - то нет.
В общем, есть элементарный кодище: if checkbox1.Checked=true then reg :=...

Помогите с включением симистора разобраться.
Вопрос скорее всего чайниковский, но хочется понять суть. Итак: МК + МOC3023...

Если выбран checkbox поле для ввода активно
Смысл в чём, я не знаю как сделать, если выбран checkbox то поле для ввода...

Как открыть вторую форму если выбран RadioButton
На форме кнопка и два радиобаттана. При нажатии кнопки если выбран первый то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru