Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.12.2013, 08:13
Профессор
Отправить личное сообщение для Гробовщик Посмотреть профиль Найти все сообщения от Гробовщик
 
Регистрация: 10.03.2013
Сообщений: 169

Считать строки в таблице игнорируя вложенные
Доброго времени суток, уважаемые форумчане. Может название темы не совсем корректное, но и гуглу я запрос не смог оформить
Есть у меня табличка скрытая через строку т.е. в одной строке содержится информация об использовании материалов, а в строке ниже содержится таблица с дополнительной информацией (по умолчанию скрыта). При щелчке на иконку в не скрытой строке открывается стока ниже. И так для каждой строки. Мой скрипт ориентируется так, он определяет в каком "tr" находиться, прибавляет к нему 1 и соответственно скрывает (или открывает этот "tr"). Для удобочитаемости в нижний "tr" я вставил ещё таблицу и послушный скрипт начал скрывать строки во вложенной таблице. Вопрос вот в чём: как заставить его игнорировать строки во вложенной таблице, а брать во внимание только основную.
Вот код:
$(document).ready(function(){
    $(".toggle").click(function () {
    with (this) var row=$(this).parent().parent().get(0).rowIndex;
    row=row+1
    $('#Table tr:eq('+row+')').toggle();
    });
});

echo "<table width='100%' id='Table' border='1'>";

echo "<tr>
<td>1</td>
<td>2</td>
<td>3
<img src='/grand_smeta/images/error.png' class='toggle' width='30' height='30' alt='Открыть список ошибок' align='right'></img>
</td></tr>";

echo "<tr style='display:none;' >"; //Отдельную таблицу в tr
echo "<td colspan='3'>";

echo "<table width='100%' border='1'>";
echo "<tr>
<td>1.1</td>
<td>2.1</td>
<td>3.1</td>
       </tr>";
echo "<tr>
<td>1.2</td>
<td>2.2</td>
<td>3.2</td>
       </tr>";
echo "<tr>
<td>1.3</td>
<td>2.3</td>
<td>3.3</td>
       </tr>";
echo "</table>";   

   
echo "</td></tr>";
//строки работающие аналогично
echo "</table>";
Ответить с цитированием
  #2 (permalink)  
Старый 17.12.2013, 08:44
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

... #Table>tr:eq ...
Ответить с цитированием
  #3 (permalink)  
Старый 17.12.2013, 08:56
Профессор
Отправить личное сообщение для Гробовщик Посмотреть профиль Найти все сообщения от Гробовщик
 
Регистрация: 10.03.2013
Сообщений: 169

Сообщение от Rise Посмотреть сообщение
... #Table>tr:eq ...
Были попытки так сделать, но это положило скрипт
$('#Table > tr:eq('+row+')').toggle();
Ответить с цитированием
  #4 (permalink)  
Старый 17.12.2013, 09:04
Профессор
Отправить личное сообщение для Гробовщик Посмотреть профиль Найти все сообщения от Гробовщик
 
Регистрация: 10.03.2013
Сообщений: 169

Rise,
С этого я и начинал, и так я тоже делал Увы скрипту не важно так:
$('#Table>tr:eq('+row+')').toggle();
или так
$('#Table > tr:eq('+row+')').toggle();

Повёл он себя совершенно одинаково. Может быть ему что то мешает?
Ответить с цитированием
  #5 (permalink)  
Старый 17.12.2013, 09:11
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Гробовщик,
Сообщение от Rise Посмотреть сообщение
... #Table>tbody>tr:eq ...
Тэг tbody браузер всегда прописывает в таблице, даже если он явно не указан в коде...
Ответить с цитированием
  #6 (permalink)  
Старый 17.12.2013, 09:29
Профессор
Отправить личное сообщение для Гробовщик Посмотреть профиль Найти все сообщения от Гробовщик
 
Регистрация: 10.03.2013
Сообщений: 169

Rise,
Действительно сработало, если честно всегда игнорировал этот тег. Спасибо большое
Ответить с цитированием
  #7 (permalink)  
Старый 17.12.2013, 09:32
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Гробовщик, можешь прописать его в коде, чтобы не путаться...
Ответить с цитированием
  #8 (permalink)  
Старый 17.12.2013, 09:49
Профессор
Отправить личное сообщение для Гробовщик Посмотреть профиль Найти все сообщения от Гробовщик
 
Регистрация: 10.03.2013
Сообщений: 169

Rise,
Так и сделал
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавить/удалить строки в таблице zerojava Элементы интерфейса 4 31.12.2012 16:43
Выделение строки в таблице posta ExtJS 5 23.06.2011 12:31
Отфильтровать строки в таблице по заданным критериям Hag1989 Общие вопросы Javascript 0 03.12.2009 02:06
Строки в таблице Gufer Элементы интерфейса 3 28.06.2009 01:53
Подсветка выделенной строки в таблице (row table highlight) artsage Элементы интерфейса 4 03.04.2009 06:40