Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.02.2012, 17:05
Профессор
Отправить личное сообщение для lamer Посмотреть профиль Найти все сообщения от lamer
 
Регистрация: 08.02.2012
Сообщений: 216

Проблема с getElementsByName - Help!
И снова здравствуйте)
Столкнулся с проблемой, не работает getElementsByName, а реализовать по средствам getElementById структура сайта не позволяет. Подскажите плиз, что я делаю не так ?

<html>

<head>
<script type="text/javascript">
function logIn() {
var l = document.getElementsByName("login");
var p = document.getElementsByName("pass");
if ((l.value=="") || (p.value==""))
{alert("Заполните поля.");return false;}
else
{alert("Ошибка.");return false;}
}
</script>
</head>

<body>
<input id="login" name="login" type="text">
<input id="pass" name="pass" type="password">
<input type="button" value="Login" onclick="logIn()">
</body>

</html>


т.е. мне нужно привязать функцию проверки заполнения полей по средствам getElementsByName, это легко можно сделать с помощью getElementById но мне этот вариант не подходит, нужна привязка к name="login" и name="pass"
Подскажите что я делаю не так ?
Ответить с цитированием
  #2 (permalink)  
Старый 10.02.2012, 17:18
Кандидат Javascript-наук
Отправить личное сообщение для nyols Посмотреть профиль Найти все сообщения от nyols
 
Регистрация: 16.02.2011
Сообщений: 134

var l = document.getElementsByName("login")*!*[0]*/!*;
var p = document.getElementsByName("pass")*!*[0]*/!*;
Ответить с цитированием
  #3 (permalink)  
Старый 10.02.2012, 17:32
Профессор
Отправить личное сообщение для lamer Посмотреть профиль Найти все сообщения от lamer
 
Регистрация: 08.02.2012
Сообщений: 216

Сообщение от nyols Посмотреть сообщение
var l = document.getElementsByName("login")*!*[0]*/!*;
var p = document.getElementsByName("pass")*!*[0]*/!*;
Ура работает
Только не совсем понятно что такое [0] ?
Ответить с цитированием
  #4 (permalink)  
Старый 10.02.2012, 17:48
Профессор
Отправить личное сообщение для Seva1986 Посмотреть профиль Найти все сообщения от Seva1986
 
Регистрация: 01.10.2011
Сообщений: 422

Сообщение от lamer
Только не совсем понятно что такое [0] ?
превый элемент в коллекции которую возвращает метод getElementsByName() нумерация с нуля начинаеться.
без индекса, в данном случае нуля, вернётся не элемент а вся колекция (типа масив) элементов содержащих соответсвующий атрибут name.
Ответить с цитированием
  #5 (permalink)  
Старый 10.02.2012, 17:56
Профессор
Отправить личное сообщение для lamer Посмотреть профиль Найти все сообщения от lamer
 
Регистрация: 08.02.2012
Сообщений: 216

Сообщение от Seva1986 Посмотреть сообщение
превый элемент в коллекции которую возвращает метод getElementsByName() нумерация с нуля начинаеться.
без индекса, в данном случае нуля, вернётся не элемент а вся колекция (типа масив) элементов содержащих соответсвующий атрибут name.
Я беру шаблон и привязываю к нему этот скрипт на проверку заполнения поля, но в шаблоне не работает он
Видимо это из-за номера элемента, я ставлю [0]
Как узнать или посчитать какой именно это номер элемента чтоб в [] указать правильную цифру ?
Ответить с цитированием
  #6 (permalink)  
Старый 10.02.2012, 19:37
Профессор
Отправить личное сообщение для Seva1986 Посмотреть профиль Найти все сообщения от Seva1986
 
Регистрация: 01.10.2011
Сообщений: 422

Сообщение от lamer
Как узнать или посчитать какой именно это номер элемента чтоб в [] указать правильную цифру ?
в дом модели с верху документа по порядку. только не все подряд а только те что с неймом нужным.

Последний раз редактировалось Seva1986, 10.02.2012 в 19:39.
Ответить с цитированием
  #7 (permalink)  
Старый 10.02.2012, 19:45
Профессор
Отправить личное сообщение для Seva1986 Посмотреть профиль Найти все сообщения от Seva1986
 
Регистрация: 01.10.2011
Сообщений: 422

А что не работает?
<!DOCTYPE HTML>
<html lang="ru">
<head>
    <meta charset="UTF-8"/>
    <title></title>
    <script type="text/javascript">
        function logIn() {
            var l = document.getElementsByName("login")[0];
            var p = document.getElementsByName("pass")[0];

            if ((l.value == "") || (p.value == "")) {
                alert("Заполните поля.");
                return false;
            }
            else {
                alert("Ошибка.");
                return false;
            }
        }
    </script>
</head>

<body>
<input id="login" name="login" type="text">
<input id="pass" name="pass" type="password">
<input type="button" value="Login" onclick="logIn()">
</body>

</html>
Ответить с цитированием
  #8 (permalink)  
Старый 11.02.2012, 13:29
Профессор
Отправить личное сообщение для lamer Посмотреть профиль Найти все сообщения от lamer
 
Регистрация: 08.02.2012
Сообщений: 216

Сообщение от Seva1986 Посмотреть сообщение
в дом модели с верху документа по порядку. только не все подряд а только те что с неймом нужным.
Все работает в моем примере, просто подобный скрипт мне нужно вставлять в разные шаблоны, а там много разных форм и т.д. вот я не могу понять как мне определять что нужно писать в [] тут ?
Вот я открываю свой шаблон смотрю на код, как мне определить какой номер элемента в DOM модели ?

П.С. Сорри за туфтографию =)
Ответить с цитированием
  #9 (permalink)  
Старый 12.02.2012, 14:35
Аспирант
Отправить личное сообщение для KingStar Посмотреть профиль Найти все сообщения от KingStar
 
Регистрация: 25.08.2011
Сообщений: 42

а почему тебе не позваляет использовать getElementById структура, если у тебя вполне нормально указаны id="login" и id="pass" ??? Что за стопор у тебя???

Честно, не вижу никакой загвоздки
Ответить с цитированием
  #10 (permalink)  
Старый 12.02.2012, 14:51
Профессор
Отправить личное сообщение для lamer Посмотреть профиль Найти все сообщения от lamer
 
Регистрация: 08.02.2012
Сообщений: 216

Сообщение от KingStar Посмотреть сообщение
а почему тебе не позваляет использовать getElementById структура, если у тебя вполне нормально указаны id="login" и id="pass" ??? Что за стопор у тебя???

Честно, не вижу никакой загвоздки
Я отписал все выше, видимо вы не внимательно читали.

Сообщение от lamer Посмотреть сообщение
просто подобный скрипт мне нужно вставлять в разные шаблоны, а там много разных форм и т.д.
Вопрос остается, подскажите плиз как определить номер элемента в DOM модели ?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с Popup окном vovuslik jQuery 5 12.06.2010 15:12
Проблема с дизайном после отправки xmlhttprequest, Проблема с дизайном после отправки cyberx AJAX и COMET 3 01.05.2010 16:07
Проблема с CSS COKOJIOB (X)HTML/CSS 5 04.08.2009 13:19
Проблема, в менюшке Большой джо Элементы интерфейса 0 12.07.2009 16:12
Проблема спама lliberty AJAX и COMET 1 12.03.2009 15:47