Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как удалять строки и столбцы из таблицы?

Сообщения:  [1-10] 

 
 автор: AlMag   (20.01.2007 в 11:45)   письмо автору
 
   для: RMW   (19.01.2007 в 21:20)
 

Нет, вы меня не совсем поняли. Я хотел удалить столбец, а не ячейку.
Весь столбец полностью. Но всё-таки я разобрался, благодаря вашему коду.
Вот моя ф-ция, удаляющая крайний правый столбец.

   function deleteRightCol(obj)
   {
    var table=document.getElementById("tbl");
    var i,j,n=table.rows.length,m=table.rows[0].cells.length;
    for (i=0;i<n;i++)
    {
     table.rows[i].cells[m-2].innerHTML=table.rows[i].cells[m-1].innerHTML;
     table.rows[i].deleteCell(m-1);
   }

Я просто в цыкле делаю тоже, что и Вы.
Спасибо.

   
 
 автор: Conta   (19.01.2007 в 21:50)   письмо автору
 
   для: Lelik   (19.01.2007 в 21:03)
 

Lelik написал:
>Можешь каждому тегу tr присвоить ид

Зачем?
Ведь у каждого тега <TR> и так уже есть персональный rowIndex в коллекции rows ().
А у каждой ячейки - свой cellIndex в коллекции cells ()

   
 
 автор: RMW   (19.01.2007 в 21:20)   письмо автору
 
   для: AlMag   (19.01.2007 в 20:38)
 

Разбирайтесь с DOM, parentNode и всё такое...
ваш пример:

<script>  
function deleteRow(obj)  
{  
  var table = document.getElementById('tbl');  
  var ntr = obj.parentNode.parentNode.rowIndex;  
  if(table.rows.length>1)table.deleteRow(ntr);  
  table.rows[0].cells[0].innerHTML=table.rows[table.rows.length-1].cells[0].innerHTML='<button onclick="deleteRow(this)">-></button>';  
}

function deleteCell(obj)
{
  var tr = obj.parentNode.parentNode;
  if(tr.cells.length>3)
  if(obj.parentNode.cellIndex == 1)tr.deleteCell(obj.parentNode.cellIndex+1);
  else tr.deleteCell(tr.cells.length-2);
}  
</script>  

<table border="1" id="tbl">  
<tr>  
<td><button onclick="deleteRow(this)">-></button></td><td><button onclick="deleteCell(this)">-></button></td><td>100</td><td>101</td><td><button onclick="deleteCell(this)"><-</button></td>  
</tr>  

<tr>  
<td>&nbsp;</td><td><button onclick="deleteCell(this)">-></button></td><td>200</td><td>201</td><td><button onclick="deleteCell(this)"><-</button></td>  
</tr>  

<tr>  
<td>&nbsp;</td><td><button onclick="deleteCell(this)">-></button></td><td>300</td><td>301</td><td><button onclick="deleteCell(this)"><-</button></td>  
</tr>  

<tr>  
<td><button onclick="deleteRow(this)">-></button></td><td><button onclick="deleteCell(this)">-></button></td><td>400</td><td>401</td><td><button onclick="deleteCell(this)"><-</button></td>  
</tr>  
</table>

   
 
 автор: Lelik   (19.01.2007 в 21:03)   письмо автору
 
   для: AlMag   (19.01.2007 в 20:38)
 

Он только для ИЕ.

Можешь каждому тегу tr присвоить ид и необходимому єлементу назначать свойство стиля display:none;

   
 
 автор: AlMag   (19.01.2007 в 20:38)   письмо автору
 
   для: AlMag   (18.01.2007 в 15:13)
 

Нет, я не смог удалить столбцы аналогичным образом... :(
Подскажите, а?

   
 
 автор: AlMag   (18.01.2007 в 15:13)   письмо автору
 
   для: RMW   (17.01.2007 в 22:16)
 

Спасибо большое! Это то, что мне нужно!
Сейчас пробую разобраться, как удалять столбцы и ещё некоторые ф-ции делать.

   
 
 автор: RMW   (17.01.2007 в 22:16)   письмо автору
 
   для: AlMag   (17.01.2007 в 20:16)
 

Для решения вашей задачи вам могут понадобиться
специальные "табличные" DOM штуки.
К примеру статья:
http://mv.hut2.ru/index.php?page_name=articles&cmd=7
Пример удаления строк там почему-то не совсем рабочий,
поэтому вот - ,где-то так:

<script> 
function deleteRow(obj) 

  var table = document.getElementById('tbl'); 
  var ntr = obj.parentNode.parentNode.rowIndex; 
  table.deleteRow(ntr); 
  table.rows[0].cells[0].innerHTML=table.rows[table.rows.length-1].cells[0].innerHTML='<button onclick="deleteRow(this)">-></button>'; 

</script> 

<table border="1" id="tbl"> 
<tr> 
<td><button onclick="deleteRow(this)">-></button></td><td>100</td> 
</tr> 

<tr> 
<td>&nbsp;</td><td>200</td> 
</tr> 

<tr> 
<td>&nbsp;</td><td>300</td> 
</tr> 

<tr> 
<td><button onclick="deleteRow(this)">-></button></td><td>400</td> 
</tr> 
</table>

   
 
 автор: AlMag   (17.01.2007 в 20:16)   письмо автору
 
   для: 12345   (17.01.2007 в 19:55)
 

Спасибо.
Но я с этим впервые столкнулся, поэтому не моглы бы вы пример навести (с этой же таблицей)?

   
 
 автор: 12345   (17.01.2007 в 19:55)   письмо автору
 
   для: AlMag   (17.01.2007 в 18:59)
 

удаление: методы removeChild() и removeNode()

   
 
 автор: AlMag   (17.01.2007 в 18:59)   письмо автору
 
 

Здравствуйте.
Мне нужно создать таблицу, в каждой ячейке которой будут целые числа.
Это, по идее, без проблем. Дальше, мне надо, что бы возле первой и помледней строк,
также, как и возле первого и последнего столбца, стояла иконка (может, стрелочка),
по нажатию на которую, исчезал бы соответствующий столбец или строчка.
Ну и стрелочка подвигается, конечно.
Как мне зделать это, подскажите пожалуйста?

   

Сообщения:  [1-10] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования