Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.05.2016, 09:49
Аспирант
Отправить личное сообщение для maxapet Посмотреть профиль Найти все сообщения от maxapet
 
Регистрация: 27.08.2015
Сообщений: 43

Проблема с доступом к атрибутам <td>
Мне нужно поменять класс у ячейки таблицы. Хотел использовать toggleClass, но он не работает. Попробовал добраться что из себя представляет attr вот таким образом:
function selectLead(no){
    alert($("#selTbl td")[selectedLeadNo - 1].attr);
}

Получаю сообщение undefined, хотя должен бы увидеть код функции attr. При этом доступ к тексту ячейки через innerText есть. Т.е. вот такая функция при клике по ячейке выводит её содержимое:
function selectLead(no){
    alert($("#selTbl td")[selectedLeadNo - 1].innerText);
}

И, естественно, класс влияет на отображение ячейки.
Атрибуты других контролов вполне себе доступны.
В чём может быть дело? Почему недоступны именно атрибуты ячеек таблицы?
Ответить с цитированием
  #2 (permalink)  
Старый 06.05.2016, 10:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от maxapet
хотя должен бы увидеть код функции attr
у элемента нет никаких attr, это есть только у обьекта jquery.
Сообщение от maxapet
Хотел использовать toggleClass, но он не работает.
работает!!!
Сообщение от maxapet
В чём может быть дело?
где код смены класса?
Ответить с цитированием
  #3 (permalink)  
Старый 06.05.2016, 10:17
Аспирант
Отправить личное сообщение для maxapet Посмотреть профиль Найти все сообщения от maxapet
 
Регистрация: 27.08.2015
Сообщений: 43

"у элемента нет никаких attr, это есть только у обьекта jquery" - строго говоря, Вы правы, но посему вот такой код:
function selectLead(no){
                alert($("#div1")attr);
}

выводит код функции attr, а вот такой
function selectLead(no){
    alert($("#selTbl td")[selectedLeadNo - 1].attr);
}

выводит undefined?
Вот код для переключения класса css:
function selectLead(no){
    $("#selTbl td")[selectedLeadNo - 1].toggleClass("lead-selector-active").toggleClass("lead-selector-inactive");
}
Ответить с цитированием
  #4 (permalink)  
Старый 06.05.2016, 10:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от maxapet
$("#selTbl td")
это обьект
Сообщение от maxapet
$("#selTbl td")[selectedLeadNo - 1]
это элемент, при наличии элемента с таким индексом
Ответить с цитированием
  #5 (permalink)  
Старый 06.05.2016, 10:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

maxapet,
возможно вы хотели так

function selectLead(){ 
    $("#selTbl td").eq(selectedLeadNo-1).toggleClass("lead-selector-active lead-selector-inactive"); 
}
Ответить с цитированием
  #6 (permalink)  
Старый 06.05.2016, 11:36
Аспирант
Отправить личное сообщение для maxapet Посмотреть профиль Найти все сообщения от maxapet
 
Регистрация: 27.08.2015
Сообщений: 43

Спасибо, так, действительно, работает!
"это элемент, при наличии элемента с таким индексом" - элемент в смысле дерева DOM? Т.е. это не объект jQuery, да?
Ответить с цитированием
  #7 (permalink)  
Старый 06.05.2016, 11:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

maxapet,
под числовыми индексами в обьекте jQuery находятся выбранные!!! элементы, если такие нашлись.
Ответить с цитированием
  #8 (permalink)  
Старый 06.05.2016, 14:27
Аспирант
Отправить личное сообщение для maxapet Посмотреть профиль Найти все сообщения от maxapet
 
Регистрация: 27.08.2015
Сообщений: 43

Спасибо большое за помощь!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с доступом к переменной SergioPerm Общие вопросы Javascript 4 17.09.2015 08:34
Проблема с выборкой по атрибутам Ameline_White jQuery 2 11.08.2014 07:37
Проблема с радио кнопками px379 Общие вопросы Javascript 8 29.07.2013 09:30
Обращение к обектам jQuery - проблема с доступом. Anthony jQuery 1 08.02.2011 11:05
Проблема с доступом к элементам iframe shaddai Общие вопросы Javascript 3 10.11.2010 23:42