Показать сообщение отдельно
  #3 (permalink)  
Старый 04.04.2012, 17:02
Аватар для GuardCat
Просто любитель
Отправить личное сообщение для GuardCat Посмотреть профиль Найти все сообщения от GuardCat
 
Регистрация: 13.09.2011
Сообщений: 300

Предлагаю добавить фиелдсетам класс. Можно будет в рамках одной страницы объединять разные группы.

Вот пример. Функции при запуске передаётся класс тех тегов fieldset, радиокнопки внутри которых будут взаимно исключать выбор друг друга.
function originGroups(classForTest) {
  var 
    radiobuttons = document.querySelectorAll("fieldset." + classForTest + " input[type=radio]"),
    fieldsets = document.querySelectorAll("fieldset." + classForTest),
    x
  ;
  
  function unchecker(e) { //Это пришьём на клик к каждому полю fieldset
    e = e || window.event;
    var x, target = e.target || e.srcElement;
    if(target.type != "radio") return false;
    for(x = 0; x < radiobuttons.length; x++) {
      if (radiobuttons[x].parentNode !== this) {
        radiobuttons[x].checked = false;
      }
    }
  }
  
  for(x = 0; x < fieldsets.length; x++) {
    fieldsets[x].onclick = unchecker;
  }
}
originGroups("onlyIt");
Живой пример.

Хотя, честное слово, проще всем нужным радиокнопкам дать одно имя, независимо от того в каких они фиелдсетах. И ориентироваться по их id или другим параметрам.

Последний раз редактировалось GuardCat, 04.04.2012 в 17:07.
Ответить с цитированием