Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.09.2012, 10:45
Интересующийся
Отправить личное сообщение для raffx Посмотреть профиль Найти все сообщения от raffx
 
Регистрация: 14.05.2012
Сообщений: 20

Почему не работает такая конструкция?
Где ошибка?
function sort(){
        var elements = document.getElementsById("6");
        for(var i=0; i<elements.length; i++) {
            elements[i].style.display="none";
}
}
Ответить с цитированием
  #2 (permalink)  
Старый 19.09.2012, 10:54
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от raffx
getElementsById
такого метода не существует.

если вам нужно получить все элементы с таким ID юзайте querySelectorAll но он не работает в ИЕ7 и ниже, для него можно подключить библу QSA CSS Selector Engine v1.0
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #3 (permalink)  
Старый 19.09.2012, 10:56
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

raffx, у всех элементов на странице должен быть индивидуальный идентификатор (id)
getElementById()
Ответить с цитированием
  #4 (permalink)  
Старый 19.09.2012, 11:15
Интересующийся
Отправить личное сообщение для raffx Посмотреть профиль Найти все сообщения от raffx
 
Регистрация: 14.05.2012
Сообщений: 20

Спасибо, не заметил лишнюю букву "s". Подправил скрипт, но что-то все-еще не работает. Вся картина следующая.

<a id="6" href="#">Первый</a><br>
<a id="6" href="#">Второй</a><br>
<a id="7" href="#">Третий</a><br>

<span onClick="sort(6)">Убрать перый и второй<a/>


function sort(id){
        var elements = document.getElementById(id);
        for(var i=0; i<elements.length; i++) {
            elements[i].style.display="none";
}
}

Когда жмешь span, должна запуститься функция sort и убрать первые 2 элемента, оставив только третий. Вроде должно работать, но
Ответить с цитированием
  #5 (permalink)  
Старый 19.09.2012, 11:20
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

raffx, вы не дочитали, что
Цитата:
у всех элементов на странице должен быть индивидуальный идентификатор
<a name="a" href="#">Первый</a><br>
<a name="a" href="#">Второй</a><br>
<a name="b" href="#">Третий</a><br>
 
<span onClick="sort('a')">Убрать перый и второй<a/>


function sort(id){
        var elements = document.getElementsByName(id);
        for(var i=0; i<elements.length; i++) {
            elements[i].style.display="none";
}
}
Ответить с цитированием
  #6 (permalink)  
Старый 19.09.2012, 11:43
Интересующийся
Отправить личное сообщение для raffx Посмотреть профиль Найти все сообщения от raffx
 
Регистрация: 14.05.2012
Сообщений: 20

Я всегда думал, что id и есть уникальный идентификатор...
Переделал так, все еще не работает.
<a name="6" href="#">Первый</a><br>
<a name="6" href="#">Второй</a><br>
<a name="7" href="#">Третий</a><br>
 
<span onClick="sort('6')">Убрать перый и второй</span>


function sort(id){
        var elements = document.getElementByName(id);
        for(var i=0; i<elements.length; i++) {
            elements[i].style.display="none";
        }
}


Или уникальный идентификатор name не может быть цифрой?
Ответить с цитированием
  #7 (permalink)  
Старый 19.09.2012, 12:49
Новичок на форуме
Отправить личное сообщение для CekacBT Посмотреть профиль Найти все сообщения от CekacBT
 
Регистрация: 28.10.2011
Сообщений: 6

ты продолжаешь брать по id элементы, а id у этих элементов бльше нету. вместо этого name у тебя


<a name="6" id="1" class="fuu" href="#">Первый</a><br>
<a name="6" id="2" class="fuu" href="#">Второй</a><br>
<a name="7" id="3" class="fuu"  href="#">Третий</a><br>
 
<span onClick="sort('6')">Убрать перый и второй</span>


function sort(id){
        var elements = document.getElementsByName(id);
        for(var i=0; i<elements.length; i++) {
            elements[i].style.display="none";
        }
}


+ к карме мне

Последний раз редактировалось CekacBT, 19.09.2012 в 12:59.
Ответить с цитированием
  #8 (permalink)  
Старый 19.09.2012, 13:18
Интересующийся
Отправить личное сообщение для raffx Посмотреть профиль Найти все сообщения от raffx
 
Регистрация: 14.05.2012
Сообщений: 20

CekacBT, вы про этот id?

function sort(id){
var elements = document.getElementByName(id);

Я так понимаю, что тут может быть что угодно. Главное "getElementByName". Или я чего-то не пойму никак.
Пусть будет вот так, но скрипт не хочет работать.

function sort(key){
        var elements = document.getElementByName(key);
        for(var i=0; i<elements.length; i++) {
            elements[i].style.display="none";
        }
}
Ответить с цитированием
  #9 (permalink)  
Старый 19.09.2012, 13:59
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Откройте уже консоль ошибок и посмотрите, что там пишется.
Ответить с цитированием
  #10 (permalink)  
Старый 19.09.2012, 14:09
Интересующийся
Отправить личное сообщение для raffx Посмотреть профиль Найти все сообщения от raffx
 
Регистрация: 14.05.2012
Сообщений: 20

Понял.
getElementById пишется без s в конце Element
getElementsByName с буквой s.
Работает. Спасибо всем за помощь.
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему простейший java не работает только в Мазиле, Помогите... androlic Элементы интерфейса 4 05.07.2011 03:18
Почему не работает из PHP? Pumych Элементы интерфейса 6 12.02.2011 13:51
Почему код работает? (обращение к форме из window) Василий Б. Элементы интерфейса 10 21.04.2010 10:10
Почему не работает код? JSprog Общие вопросы Javascript 4 16.08.2009 14:39
Почему не работает функция? Vitaly jQuery 10 31.07.2009 17:01