Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Показать только те строки таблицы, ячейки которых
sashgera  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 48
Пользователь №: 37277
На форуме: 3 года, 7 месяцев, 9 дней
Карма:




Здравствуйте
Есть таблица в первом столбце есть текст с наименованием, во второй столбец динамически добавляется/удаляется текст. Изначально строки таблицы скрыты.
Нужно - показывать только те строки, в которых есть содержимое ячеек второго столбца. И не показывать строки, если ячейки второго столбцы пустые.
Код, который я привел, с поставленной задачей справляется во всех браузерах (которые у меня есть), кроме Мозиллы (49.0.1). В Мозилле задержка, примерно около секунды, перед показом таблицы
Можно как то оптимизировать код?

(Этот пример не нужно проверять на быстродействие в браузере, реально в таблице более тысячи строк)

<style type="text/css">
.hid {display:none;}
</style>
<input
type="button" value="Вставить текст" id="send">
<table
class="hid" id="tab_decode" border="1" cellspacing="0" cellpadding="0">
<tr
class="hid">
<td>
наименование 1</td>
<td
id="d1" class="decode"></td>
</tr>
<tr
class="hid">
<td>
наименование 2</td>
<td
id="d2" class="decode"></td>
</tr>
<tr
class="hid">
<td>
наименование 3</td>
<td
id="d3" class="decode"></td>
</tr>
<tr
class="hid">
<td>
наименование 4</td>
<td
id="d4" class="decode"></td>
</tr>
</table>



<script type="text/javascript">
$('#send').click(function(){
$('#d1, #d3, #d4').text('текст');

// показать только те строки, в которых ячейки .decode не пустые
// В Мозилле задержка, примерно около секунды, перед показом таблицы!!

$('.hid, #tab_decode').hide().filter(function(){
return $('.decode',this).text()
}).show();
});
</
script>
[color=silver][/color]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1355
Пользователь №: 28976
На форуме: 5 лет, 4 месяца, 4 дня
Карма: 77




// показать только те строки, в которых ячейки .decode не пустые
$(".decode:parent").show();
// скрыть все пустые
$(".decode:empty").hide();
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sashgera  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 48
Пользователь №: 37277
На форуме: 3 года, 7 месяцев, 9 дней
Карма:




Kusss, если вы имеете ввиду сделать вот так, то таблица вообще не показывается, если в таблице убрать класс .hid, то строки с пустыми ячейками .decode не скрываются

<script type="text/javascript">
$('#send').click(function(){
$('#d1, #d3, #d4').text('текст');

// показать только те строки, в которых ячейки .decode не пустые
$(".decode:parent").show();
// скрыть все пустые
$(".decode:empty").hide();
});
</
script>


Это сообщение отредактировал sashgera - 11.10.2016 - 17:45
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sashgera  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 48
Пользователь №: 37277
На форуме: 3 года, 7 месяцев, 9 дней
Карма:




Kusss, сделал так - при загрузке страницы скрываю только таблицу (раньше скрывалась таблица и строки tr) потом скрываю строки с пустыми ячейками (оставил свой старый код). Таблица стала открываться без задержки
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса