Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.10.2013, 15:45
Аспирант
Отправить личное сообщение для happy_Mikhail Посмотреть профиль Найти все сообщения от happy_Mikhail
 
Регистрация: 31.10.2013
Сообщений: 34

Поменять местами элементы tr
Здравствуйте.
сразу оговорюсь, что мои знания в JS почти никакие, а задачу решить нужно.

Задача: Есть табличка и возможность динамически добавлять в неё поля. так же есть возможность присваивать id(шники) элементам.
вот и нужно сделать так чтобы при щелчке на кнопку менялись местами
1 и 2 элементы, ну и соответственно 2 и 3 и т.д

вопрос устройства на работу
Ответить с цитированием
  #2 (permalink)  
Старый 31.10.2013, 15:53
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

tbody.insertBefore(tr3, tr2);
Первым аргументом идет вставляемый узел, вторым - узел, перед которым находится позиция вставки. То есть вставляем третью строку перед второй.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 31.10.2013, 16:00
Аспирант
Отправить личное сообщение для happy_Mikhail Посмотреть профиль Найти все сообщения от happy_Mikhail
 
Регистрация: 31.10.2013
Сообщений: 34

А, что бы назад вернуть?
Ответить с цитированием
  #4 (permalink)  
Старый 31.10.2013, 16:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от happy_Mikhail
А, что бы назад вернуть?
Выполнить то же еще раз.
Ответить с цитированием
  #5 (permalink)  
Старый 31.10.2013, 16:35
Аспирант
Отправить личное сообщение для happy_Mikhail Посмотреть профиль Найти все сообщения от happy_Mikhail
 
Регистрация: 31.10.2013
Сообщений: 34

вот смотрите у меня оч простой код который работает в " одну ссторону"
function change()
{
	var tr1,tr2;
	if(!(tr1=document.getElementById("tr1"))||!(tr2=document.getElementById("tr2")))
		return;
   
	tr2.parentNode.insertBefore(tr1,tr2);
}


А вот что забыл, у меня всего одна кнопка. То есть и поднять и опустить всё одной кнопкой

Последний раз редактировалось happy_Mikhail, 31.10.2013 в 16:41.
Ответить с цитированием
  #6 (permalink)  
Старый 31.10.2013, 16:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

happy_Mikhail,
берите строки по индексу а не по id и будет вам счастье
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script>
   function change()
  {
    var tr1,tr2;
    if(!(tr1=document.getElementsByTagName('tr')[0])||!(tr2=document.getElementsByTagName('tr')[1]))
        return;
    tr2.parentNode.insertBefore(tr2,tr1);
  }
  </script>
</head>

<body>
  <table>
    <tr>
      <td>1</td>
    </tr>

    <tr>
      <td>2</td>
    </tr>

    <tr>
      <td>3</td>
    </tr>

    <tr>
      <td>4</td>
    </tr>

    <tr>
      <td>5</td>
    </tr>

    <tr>
      <td>6</td>
    </tr>
  </table>

  <form>
    <input name="" type="button" value="go" onclick="change()">
  </form>
</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поменять местами два <div> Bay Events/DOM/Window 11 11.02.2013 22:37
Поменять местами элементы в скрипте david03 Элементы интерфейса 0 16.12.2012 09:43
Как поменять местами элементы? dezzignet jQuery 2 19.07.2012 13:36
Поменять event`ы местами UnderShot Events/DOM/Window 8 08.10.2010 21:21
Как поменять местами элементы в дереве элемента родителя? rar11 Events/DOM/Window 8 01.04.2009 18:53