Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 21.05.2014, 20:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от guest786
А как сделать когда последняя строка остается в столбце "раздел" ничего не делать?
наверно что-то проверить в строке 58.5 и если оно равно 2 то сделать return

Сообщение от guest786
вопрос как реализовать удаление всего раздела в независимости от того сколько там тем. т.е одной кнопкой определенный раздел.
наверно проверить кое-что у раздела и удалить столько-же строк следующих включая раздел
Ответить с цитированием
  #12 (permalink)  
Старый 21.05.2014, 21:01
Новичок на форуме
Отправить личное сообщение для guest786 Посмотреть профиль Найти все сообщения от guest786
 
Регистрация: 06.05.2014
Сообщений: 7

Сообщение от рони Посмотреть сообщение
наверно что-то проверить в строке 58.5 и если оно равно 2 то сделать return

if(i==2) return;


я проверил в первом разделе все прекрасно а в остальных та же фигня. Если я вас правильно понял то проверка должна быть такая?
Ответить с цитированием
  #13 (permalink)  
Старый 21.05.2014, 21:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Сообщение от guest786
проверка должна быть такая?
нет - обе проверки указанные выше проверяют одно и тоже
Ответить с цитированием
  #14 (permalink)  
Старый 21.05.2014, 21:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

guest786,
если что-то ещё то плюшки в личку
жать на циферку удалится раздел -- нажатие на минус сработает на всех строках раздела кроме последней.
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<a href="javascript://" onclick="add();return false;">Добавить раздел</a><br>
<a href="javascript://" onclick="add2();return false;">Добавить тему и описание</a><br>
<table id="tableid" cellspacing="0" border="1">
<tbody>
</tbody>
</table>
 <script>
function add()
	{
		var table = document.querySelector('#tableid')
		var tr = document.querySelectorAll('tr',table);
		var tbody = document.querySelector('tbody',table);
				var tr = tbody.insertRow(tr.length);
				var td = tr.insertCell(0);
				td.rowspan = 1;
				td.innerHTML = '<textarea name="razdel[]"></textarea>';
				td.className = "item";
				td = tr.insertCell(0);
				var item = document.querySelectorAll('td.item');
				td.rowspan = 1;
				td.innerHTML ='<input type="button" value="'+item.length+'" size="3" readonly onclick="deleteRow(this);">';
				td.className = "number";
				add2()
	}

	function add2()
	{
				var last = document.querySelectorAll('td.item'), len = last.length;
				if(!len) return;
				var table = document.querySelector('#tableid')
				var tr = document.querySelectorAll('tr',table);
				var tbody = document.querySelector('tbody',table);
						var tr = tbody.insertRow(tr.length);
						var td = tr.insertCell(0);
						td.innerHTML = '<textarea name="theme[]"></textarea>';
						td = tr.insertCell(1);
						td.innerHTML = '<textarea name="desc[]"></textarea>';
						td=tr.insertCell(2);
						td.innerHTML='<input type="button" value="-" onclick="deleteRow(this);">';
						last[len-1].rowSpan+=1;
						last = document.querySelectorAll('td.number'), len = last.length;
						last[len-1].rowSpan+=1;
	}

	function deleteRow(t)
 	{
 	  var row = t.parentNode.parentNode;
      var i = row.rowIndex;
      if(row.querySelector('td.item')){
          var qt = row.querySelector('td.item').rowSpan;
          for (var k=0; k<qt; k++)  {
             document.getElementById("tableid").deleteRow(i);
          }
          var number = document.querySelectorAll('td.number');
          for (var i=0; i<number.length; )  {
                number[i].innerHTML ='<input type="button" value="'+(++i)+'" size="3" readonly onclick="deleteRow(this);">';//если востановление нумерации ненужно убрать
          }
          return;
      }

      if(row.previousSibling.cells[0].rowSpan == 2) return;
 	  document.getElementById("tableid").deleteRow(i);
 	  for (; row = document.getElementById("tableid").rows[--i];) {
 	    if(row.querySelector('td.item')) {
 	      row.querySelector('td.item').rowSpan -= 1;
 	      row.querySelector('td.number').rowSpan -= 1;
 	      break;
 	    }
 	  }
 	}
 </script>
</body>

</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое удаление строк таблицы Tankist Events/DOM/Window 16 03.07.2013 16:42
Динамическое изменение background-a в ячейках таблицы Gh0stik Events/DOM/Window 15 02.08.2012 19:40
Группировка заголовков столбцов таблицы. ExtJS 4.1. Eugent ExtJS 0 02.05.2012 11:40
Подсветка столбцов таблицы ctocopok Элементы интерфейса 31 14.06.2011 01:42
ширина столбцов таблицы после загрузки bis Events/DOM/Window 1 26.03.2010 18:35