Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.11.2010, 16:19
Аватар для JLe
JLe JLe вне форума
Новичок на форуме
Отправить личное сообщение для JLe Посмотреть профиль Найти все сообщения от JLe
 
Регистрация: 03.11.2010
Сообщений: 9

Не работает getElementsByName
Изучаю JavaScript. Прочла статью "Поиск элементов в DOM" и решила проверить на практике.
Допустим надо подсчитать всех потомков элемента FORM

var ms = document.getElementsByName('formname')[0].getElementsByTagName('*');
alert(ms.length);


в IE выдает 20, а в FF - 0. Подскажите пожалуйста, может я чего-то не так поняла.
Ответить с цитированием
  #2 (permalink)  
Старый 03.11.2010, 16:23
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

HTML покажите.
Ответить с цитированием
  #3 (permalink)  
Старый 03.11.2010, 16:58
Аватар для JLe
JLe JLe вне форума
Новичок на форуме
Отправить личное сообщение для JLe Посмотреть профиль Найти все сообщения от JLe
 
Регистрация: 03.11.2010
Сообщений: 9

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
  <meta http-equiv="Pragma" content="no-cache"/>
  <script type="text/javascript" src="/scripts.js"></script>
  <script type="text/javascript" src="/jquery-1.3.1.js"></script>
  <title>титул</title>
</head>
<body>
  <table>
  <tr><td>
    <FORM name="filterform">
      <SELECT size="1" name="grpshow" id="grpshow" onChange="lFilterChange();">
       <OPTION value="1" selected>текст1</OPTION>
       <OPTION value="2">текст2</OPTION>
       <OPTION value="3">текст3</OPTION>
       <OPTION value="4">текст4</OPTION>
       <OPTION value="5">текст5</OPTION>
       <OPTION value="6">текст6</OPTION>
       <OPTION value="7">текст7</OPTION>
       <OPTION value="8">текст8</OPTION>
       <OPTION value="9">текст9</OPTION>
       <OPTION value="10">текст10</OPTION>
       <OPTION value="11">текст11</OPTION>
      </SELECT>
    </FORM>
  </td></tr></table>
</body>
</html>


scripts.js:
function lFilterChange() 
{
  var ms = document.getElementsByName('filterform')[0].getElementsByTagName('*');
  alert(ms.length);
}

Последний раз редактировалось JLe, 03.11.2010 в 17:18.
Ответить с цитированием
  #4 (permalink)  
Старый 03.11.2010, 17:01
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Всё вместе желательно, чтобы ошибку воспроизвести.
Ответить с цитированием
  #5 (permalink)  
Старый 03.11.2010, 17:21
Аватар для JLe
JLe JLe вне форума
Новичок на форуме
Отправить личное сообщение для JLe Посмотреть профиль Найти все сообщения от JLe
 
Регистрация: 03.11.2010
Сообщений: 9

подправила
Ответить с цитированием
  #6 (permalink)  
Старый 03.11.2010, 17:26
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
  <meta http-equiv="Pragma" content="no-cache"/>
  <script type="text/javascript">
function lFilterChange()
{
  var ms = document.getElementsByName('filterform')[0].getElementsByTagName('*');
  alert(ms.length);
}
  </script>
  <title>титул</title>
</head>
<body>
  <table>
  <tr><td>
    <FORM name="filterform">
      <SELECT size="1" name="grpshow" id="grpshow" onChange="lFilterChange();">
       <OPTION value="1" selected>текст1</OPTION>
       <OPTION value="2">текст2</OPTION>
       <OPTION value="3">текст3</OPTION>
       <OPTION value="4">текст4</OPTION>
       <OPTION value="5">текст5</OPTION>
       <OPTION value="6">текст6</OPTION>
       <OPTION value="7">текст7</OPTION>
       <OPTION value="8">текст8</OPTION>
       <OPTION value="9">текст9</OPTION>
       <OPTION value="10">текст10</OPTION>
       <OPTION value="11">текст11</OPTION>
      </SELECT>
    </FORM>
  </td></tr></table>
</body>
</html>

Всё работает.
Ответить с цитированием
  #7 (permalink)  
Старый 03.11.2010, 17:47
Аватар для JLe
JLe JLe вне форума
Новичок на форуме
Отправить личное сообщение для JLe Посмотреть профиль Найти все сообщения от JLe
 
Регистрация: 03.11.2010
Сообщений: 9

спасибо, значит у меня где-то в другом месте ошибка, буду искать
Ответить с цитированием
  #8 (permalink)  
Старый 04.11.2010, 11:31
Аватар для JLe
JLe JLe вне форума
Новичок на форуме
Отправить личное сообщение для JLe Посмотреть профиль Найти все сообщения от JLe
 
Регистрация: 03.11.2010
Сообщений: 9

Нашла ошибку. Так работает:
<table><tr><td><FORM></FORM></td></tr></table>

а так нет:
<table><tr><FORM><td></td></FORM></tr></table>
Ответить с цитированием
  #9 (permalink)  
Старый 04.11.2010, 11:45
2de 2de вне форума
Аспирант
Отправить личное сообщение для 2de Посмотреть профиль Найти все сообщения от 2de
 
Регистрация: 26.10.2010
Сообщений: 78

Ничего себе ошибка, это не ошибка а непойми что, нельзя так делать. Нужно либо таблицу вставлять в форму либо форму вставлять в ячейку.
Ответить с цитированием
  #10 (permalink)  
Старый 04.11.2010, 12:03
Аватар для JLe
JLe JLe вне форума
Новичок на форуме
Отправить личное сообщение для JLe Посмотреть профиль Найти все сообщения от JLe
 
Регистрация: 03.11.2010
Сообщений: 9

Та я догадываюсь, что неправильно делаю, но что делать если надо
В общем смысл какой - форма "растянута" на строку в таблице. Таблица длинная. В ячейках находятся элементы этой формы. Все очень красивенько выглядит (с точки зрения пользователя) и некоторых браузерах работает. Результат - строки в таблице можно редактировать не отходя от кассы.
Если у вас есть лучшие идеи по этому поводу, с удовольствием выслушаю.

Можно наверное вообще убрать форму, но при этом оставить ее элементы... подумаю еще в общем

Последний раз редактировалось JLe, 04.11.2010 в 15:41.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите найти ошибку (работает в IE но не работает в Firefox) Len4ik Javascript под браузер 2 11.05.2010 15:41
Не работает getElementsByName SunYang Общие вопросы Javascript 13 08.02.2010 00:02
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41
Динамическая HTML форма (FireFox - работает, IE - не работает) dm1tr1y Общие вопросы Javascript 10 11.12.2009 15:59
Скрипт меню-гармошки работает выборочно Extern Элементы интерфейса 2 23.02.2009 15:32