Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/47: Рейтинг темы: голосов - 47, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 35

Скрыть (показать) ячейку таблицы

24.02.2017, 22:58. Показов 9612. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Уже второй вечер не могу решить простую задачу:
Нужно при определенном условии сделать ячейку таблицы (id=label) с размещенным в ней объектом (button) невидимой.
Пытаюсь сделать следующим образом:
JavaScript
1
2
3
4
function hide()
        {
        document.getElementById('label').style.display ='none';
        }
HTML5
1
2
3
<td id=label>
<div id="button"</div>
</td>
Почему-то такая конструкция отказывается работать. Что не так?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.02.2017, 22:58
Ответы с готовыми решениями:

Как скрыть/показать строку таблицы
Голову сломал уже..не могу найти решение. Нужно, чтобы при нажатии на кнопку в статичной таблице исчезала/появлялась одна из строк...

Блок div скрыть/показать при нажатии на кнопку "показать все"
Добрый день. На странице: https://moscow.xn--80aasvalvca.xn--p1ai/ru/rezume/massagists/belyaevdv/ не могу понять, как сделать так...

Показать / Скрыть
Здравствуйте! помогите сделать скрипт показать скрыть по клику, как показано на фото. Заранее спасибо)

5
Фрилансер
Эксперт PythonЭксперт JSЭксперт PHP
 Аватар для Azdeman
1871 / 1362 / 604
Регистрация: 12.01.2011
Сообщений: 5,470
24.02.2017, 23:22
HTML5
1
2
3
4
5
6
7
8
9
10
11
<table>
           <tr>
               <td id=label>
                <div id="button">0</div>
                </td>
               <td>2</td>
               <td>3</td>
               <td>4</td>
               <td>5</td>
           </tr>
       </table>
JavaScript
1
document.getElementById('button').parentElement.style.display = 'none';
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 35
24.02.2017, 23:31  [ТС]
К сожалению, не работает
А почему
JavaScript
1
document.getElementById('button').parentElement.style.display = 'none';
а не
JavaScript
1
document.getElementById('label').parentElement.style.display = 'none';
Ведь нужно скрыть ячейку с объектом, а не сам объект.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
25.02.2017, 01:51
Цитата Сообщение от Foxconn Посмотреть сообщение
Что не так?
по определению таблица -- это N строк, в каждой из которых имеется ровно M ячеек
вы возжелали в одной из строк сделать M-1 ячейку -- а это уже не таблица, таблиц "с дыркой внутри" не бывает
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 35
25.02.2017, 09:25  [ТС]
Хорошо, давайте рассмотрим пример. Имеется таблица 2 строки по 4 ячейки. В первом случае (рис.1) для первой ячейки пишем:
HTML5
1
<td  id="label" style="display:block">
во втором случае (рис.2):
HTML5
1
<td  id="label" style="display:none">
Тоже ведь, получается "дырка" в таблице? Но все работает! Тогда почему из скрипта невозможно присвоить ячейке label значение style.display ='none'
Миниатюры
Скрыть (показать) ячейку таблицы   Скрыть (показать) ячейку таблицы  
0
Эксперт JSЭксперт HTML/CSS
 Аватар для mrtoxas
3827 / 2677 / 1521
Регистрация: 12.07.2015
Сообщений: 6,672
Записей в блоге: 4
25.02.2017, 10:45
Foxconn, все можно, но не нужно. Вы можете назначить display:none ячейке таблицы.
Но назначив этот стиль ячейке, вы поломаете таблицу. Чтобы сохранить структуру таблицы и скрыть ячейку, воспользуйтесь стилем visibility: hidden.

В вашем первом сообщении код не работает, потому что, функция сама себя не вызовет.
В третьем сообщении внимательно посмотрите на код, вы обращаетесь к родителю, а не к самому элементу, поэтому и не срабатывает. Azdeman вам дал код, который прячет ячейку, и этот код работает.

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!DOCTYPE html>
<html lang="en">
 
<head>
  <meta charset="UTF-8" />
  <title>Document</title>
  <style>
    td{
      border:1px solid black;
      padding:10px;
  }
  </style>
</head>
 
<body>
  <table>
    <tr>
      <td id="label">1</td>
      <td>2</td>
    </tr>
    <tr>
      <td>3</td>
      <td>4</td>
    </tr>
  </table>
  <script>
    function hide(){
    document.getElementById('label').style.visibility = 'hidden';
  }
  hide();
  </script>
</body>
 
</html>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.02.2017, 10:45
Помогаю со студенческими работами здесь

JS показать/скрыть элементы
Почему открывает блок menu сперва после второго клика, а потом нормально работает, по клику - показывает/скрывает. Перезагружаю страницу,...

Показать и скрыть слои
Есть три слоя Layer1, Layer2, Layer3 нужно так при нажатии button1 слой Layer1 показывается, а слои Layer2, Layer3 скрыты; при нажатии...

Скрыть показать блоки
Добрый день, подскажите команду JS типа такого $(document).on('click', '#showhide', function(){ ...

Показать, скрыть блок
Добрый день! Такой вопрос, есть блок &quot;Заголовок&quot; при клике на который должен появляться блок с текстом. А при повторном клике...

Показать\Скрыть текст
Подскажите пожалуйста какую нибуть функцию(скрипт) для того чтобы при нажатии на заголовок открывался весь текст при повторном закривался


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru