Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 25.07.2010, 22:19
Интересующийся
Отправить личное сообщение для boris2000 Посмотреть профиль Найти все сообщения от boris2000
 
Регистрация: 25.11.2009
Сообщений: 22

спасибо, исправил. Самое потрясающее что все-равно не работает.

не работает даже отдельная кнопка с этой функцией
<BUTTON TYPE = BUTTON ONCLICK="getCheckedValue(document.forms['aef'].elements['articletype']);">Check2</BUTTON><br>
Ответить с цитированием
  #12 (permalink)  
Старый 25.07.2010, 22:21
Интересующийся
Отправить личное сообщение для boris2000 Посмотреть профиль Найти все сообщения от boris2000
 
Регистрация: 25.11.2009
Сообщений: 22

мне нужно понять в каких группах radiobutton не сделано никакого выбора, и показать пользователю напоминание о них, и форму не отправлять до тех пор пока хоть какой-то выбор во всех нужных группах не сделает.
но в принципе и выбранные value наверное будет достаточно для этого. если value не число - значит и выбора не было? или не так?
Ответить с цитированием
  #13 (permalink)  
Старый 25.07.2010, 22:27
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

Цитата:
if (getCheckedValue(document.forms['aef'].elements[obligatory_radiobutton_array[j]]) = "")
Сравнение делается так ==
Ответить с цитированием
  #14 (permalink)  
Старый 25.07.2010, 22:28
Любитель
Отправить личное сообщение для JsLoveR Посмотреть профиль Найти все сообщения от JsLoveR
 
Регистрация: 16.12.2009
Сообщений: 422

В value можно сохранить имена чекбоксов.
float, угу)
Ответить с цитированием
  #15 (permalink)  
Старый 25.07.2010, 22:30
Интересующийся
Отправить личное сообщение для boris2000 Посмотреть профиль Найти все сообщения от boris2000
 
Регистрация: 25.11.2009
Сообщений: 22

Сообщение от float Посмотреть сообщение
Сравнение делается так ==
спасибо, исправил. но ведь не работает!
Ответить с цитированием
  #16 (permalink)  
Старый 25.07.2010, 22:31
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

Besides all.
getCheckedValue не делает перебор элементов раз.
Она возвращает value, а у вас в 1-м НОЛЬ стоит, который преобразуется в false
Ответить с цитированием
  #17 (permalink)  
Старый 25.07.2010, 22:33
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

Поясните что вы хотите от скрипта, возможно его проще переписать, чем переделать
Ответить с цитированием
  #18 (permalink)  
Старый 25.07.2010, 22:33
Интересующийся
Отправить личное сообщение для boris2000 Посмотреть профиль Найти все сообщения от boris2000
 
Регистрация: 25.11.2009
Сообщений: 22

Сообщение от JsLoveR Посмотреть сообщение
В value можно сохранить имена чекбоксов.
не подскажите как это делается? я в JS, мягко говоря, не очень.

и еще один важный момент - в форме есть не только radiobutton, но и флажки checkbox - а для них мне будет нужна отдельная функция, потому что они там сложно объединены в группы.
поэтому надо "пробегаться" очень избирательно. это возможно?
Ответить с цитированием
  #19 (permalink)  
Старый 25.07.2010, 22:40
Интересующийся
Отправить личное сообщение для boris2000 Посмотреть профиль Найти все сообщения от boris2000
 
Регистрация: 25.11.2009
Сообщений: 22

Сообщение от float Посмотреть сообщение
Поясните что вы хотите от скрипта, возможно его проще переписать, чем переделать
у меня в форме набор из radiobutton, checkbox и текстовых полей.
мне надо чтобы перед отправкой формы шла проверка - все ли radiobutton пользователь отметил. если не все - выдавать ему предупреждение и форму не отправлять.

с checkbox все сложнее. они сгруппированы по смыслу, при этом имена checkbox из одной смысловой группы разные, например как в этом кусочке кода, в котором все флажки входят в одну смысловую группу
<div class="abstract_estimation_h3">Nephrological (urological) abstract topics:<a href="/gbd/mediawiki/index.php/Abstract_estimation_form" target=helpwindow><img src="/gbd/images/info_16.png" alt="" border=0></a></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_ckdonly" value="1" onclick="enableTxtField(this)"  />only CKD in total without specifying nosology</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_ckdwithdetails" value="1" onclick="enableTxtField(this)"  />CKD with kidney diseases nosology evaluation after initial screening</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_chronicgn" value="1" onclick="enableTxtField(this)"  />chronic glomerulonephritis</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_acutegn" value="1" onclick="enableTxtField(this)"  />acute glomerulonephritis</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_chronicpn" value="1" onclick="enableTxtField(this)"  />chronic pyelonephritis</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_chronictin" value="1" onclick="enableTxtField(this)"  />chronic tubulointersticial nephritis</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_urolithiasis" value="1" onclick="enableTxtField(this)"  />urolithiasis</label></div>

<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_congenital" value="1" onclick="enableTxtField(this)"  />congenital GU malformations</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_hereditary" value="1" onclick="enableTxtField(this)"  />heredetary kidney diseases</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_hypertensive" value="1" onclick="enableTxtField(this)"  />hypertensive kidney disease</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_dm1" value="1" onclick="enableTxtField(this)"  />diabetic nephropathy in type 1 DM</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_dm2" value="1" onclick="enableTxtField(this)"  />diabetic nephropathy in type 2 DM</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_dmunknown" value="1" onclick="enableTxtField(this)"  />diabetic nephropathiy without DM type detalisation</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_bph" value="1" onclick="enableTxtField(this)"  />benign prostatic hypertrophy</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_esrd" value="1" onclick="enableTxtField(this)"  />end-stage renal disease</label></div>
<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_arf" value="1" onclick="enableTxtField(this)"  />acute renal failure</label></div>

<div class="abstract_estimation_list"><label><input type="checkbox" name="nosology_other" value="1" onclick="enableTxtField(this)"  />other</label> <input type="text" name="nosology_otheradd" id="nosologyother" size="50" value="" disabled="true"></div>


если пользователь выбрал хотя бы один из флажков смысловой группы, то это меня устраивает. если не выбрал ни один из флажков смысловой группы - опять же, надо показать ему предупреждение с названием смысловой группы.

я начал с radiobutton потому что вроде как с ними ситуация попроще. но оказалось - не так
Ответить с цитированием
  #20 (permalink)  
Старый 26.07.2010, 00:22
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

Я предлагаю так

сделайте это объектом:
var obligatory_radiobutton_array = {'name1': 0, 'name2': 0, и т.д.};

Функция обработчик должна делать следующее:

1. выбрать все элементы формы и перебрать их;
2. в каждом переборе спросить у инпута его имя, тип и выбран ли он;
3. если выбран => смотрим есть ли в obligatory_radiobutton_array свойство=имени инпута;
если да, делаем его = 1;
4. делаем перебор obligatory_radiobutton_array. Если есть хоть одно свойство = 0, вызаваем функцию с оповещением, возвращаем фолс
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41
Динамическая HTML форма (FireFox - работает, IE - не работает) dm1tr1y Общие вопросы Javascript 10 11.12.2009 15:59
Safari + ajax некорректно работает, а в других работает demi AJAX и COMET 35 15.07.2009 14:11
Не работает eval в IE ..::Silence::.. Общие вопросы Javascript 8 25.03.2009 13:16
Скрипт меню-гармошки работает выборочно Extern Элементы интерфейса 2 23.02.2009 15:32