Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: отметить все чекбоксы / по иду не работает
 
 автор: celovec   (18.03.2012 в 23:25)   письмо автору
 
 

никак не пойму почему первый не работает, а второй вариант работает!?

function setChecked(obj)
   {
   var str = document.getElementById("text").innerHTML;
   str = (str == "îòìåòèòü" ? "      ñíÿòü" : "îòìåòèòü");
   document.getElementById("text").innerHTML = str;
   
   var check = document.getElementsById("idd");
   for (var i=0; i<check.length; i++)
      {
      check[i].checked = obj.checked;
      }
   }
</script>


<input type=checkbox id=idd  value=2 />  CSS<br />








function setChecked(obj)
   {
   var str = document.getElementById("text").innerHTML;
   str = (str == "&#238;&#242;&#236;&#229;&#242;&#232;&#242;&#252;" ? "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#241;&#237;&#255;&#242;&#252;" : "&#238;&#242;&#236;&#229;&#242;&#232;&#242;&#252;");
   document.getElementById("text").innerHTML = str;
   
   var check = document.getElementsByName("idd");
   for (var i=0; i<check.length; i++)
      {
      check[i].checked = obj.checked;
      }
   }
</script>


<input type=checkbox name=idd  value=2 />  CSS<br />

  Ответить  
 
 автор: Sfinks   (18.03.2012 в 23:31)   письмо автору
 
   для: celovec   (18.03.2012 в 23:25)
 

getElementsById("idd"); - такого не существует. Т.к. элемент с конкретным ID может быть только один. Поэтому и метод в единственном числе:
getElementById()

  Ответить  
 
 автор: celovec   (18.03.2012 в 23:35)   письмо автору
 
   для: Sfinks   (18.03.2012 в 23:31)
 

не помогло

а почему тогда document.getElementsByName("idd"); работает? ведь ровно тоже самое


(чекбоксов у меня несколько, не один/ просто они все одинаковые)

  Ответить  
 
 автор: Sfinks   (18.03.2012 в 23:43)   письмо автору
 
   для: celovec   (18.03.2012 в 23:35)
 

> ведь ровно тоже самое
Кардинально не тоже самое! Я ж вам русским по белому говорю: НЕ МОЖЕТ БЫТЬ НЕСКОЛЬКО ЭЛЕМЕНТОВ С ОДИНАКОВЫМ ID !!!
А с одинаковым name - сколько угодно.

Соответственно
> (чекбоксов у меня несколько, не один/ просто они все одинаковые)
если у вас у всех чекбоксов и id одинаковые, то у вас вся DOM неправильная.
Соответственно не ждите что ваш документ будет себя предсказуемо вести.

  Ответить  
 
 автор: celovec   (18.03.2012 в 23:46)   письмо автору
 
   для: Sfinks   (18.03.2012 в 23:43)
 

хорошо
я если так getElementsById("idd[]");

правильно?
и type=checkbox id=idd[]

теперь они разные

  Ответить  
 
 автор: celovec   (19.03.2012 в 00:28)   письмо автору
 
   для: celovec   (18.03.2012 в 23:46)
 

спасибо и на этом

  Ответить  
 
 автор: ЯСА   (19.03.2012 в 00:30)   письмо автору
 
   для: celovec   (18.03.2012 в 23:46)
 

В DHTML есть методы.

Их не очень много, см. по ссылке - http://msdn.microsoft.com/en-us/library/hh773165%28v=vs.85%29.aspx

Вот из них и выбирайте.

А все остальные, вами выдуманные, они, увы, работать не будут.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования