Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Перенесение строчки из одной таблицы в другую


Автор: maxipub 5.11.2012, 17:08
Как на javascript перенести TR с id="tr2move" из таблицы table_from в таблицу table_to?

Автор: Amphiluke 5.11.2012, 17:40
Любым из методов .appendChild, .insertBefore

Автор: maxipub 6.11.2012, 10:13
Amphiluke, при использовании .appendChild - непонятно как получить данные, которые необходимо вставлять innerHTML-ом. Когда юзаю .insertBefore  - он работает только в пределах родительской таблицы, в другую переносить строку наотрез отказывается. В чем может быть дело? Уже что и как только не перепробовал. Нид хелп! smile 

Автор: Aliance 6.11.2012, 11:00
http://jsfiddle.net/Aliance/4wtCe/

Автор: maxipub 6.11.2012, 12:58
Aliance, большое спасибо за пример, но jquery не пользуюсь, так что не совсем понятно как это сделать на самом JS. smile 

Автор: Aliance 6.11.2012, 13:36
Тебе в посте №2 дали названия методов, которые нужно использовать.
В посте №4 я написал тебе полностью работоспособный код, но на jQuery.
Любой человек, который разбирается в js, способен имея данные подсказки сделать из них единое, удовл. условию задачи. Ты же, судя по всему, хочешь чтобы тебе написали требуемое тобою с нуля и полностью за бесплатно. Тут так никто не делает, тут помогают.
Неужели так трудно заменить в моем примере $('#id') на document.getElementById('id') и использовать appendChild() вместо appendTo()

Автор: maxipub 6.11.2012, 14:42
Цитата(Aliance @  6.11.2012,  13:36 Найти цитируемый пост)
который разбирается в js

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

Пробовал так

Код

document.getElementById('tr2move').appendChild(document.getElementById('table_to'));


без результата...

Автор: Aliance 6.11.2012, 14:49
Потому что appendChild вызывается у того элемента, куда мы вставляем, а передается аргументом тот элемент, который мы вставляем.

Автор: maxipub 6.11.2012, 14:54
Код

document.getElementById('table_to').appendChild(document.getElementById('tr2move'));

?

Строка пропадает из таблицы, но не попадает во вторую.

Автор: Aliance 6.11.2012, 17:19
Значит в разметке где-то ошибка. Все должно работать при таком коде: http://jsfiddle.net/Aliance/4wtCe/1/

Автор: maxipub 6.11.2012, 18:25
Aliance, хм, я что-то ничего не понял. Открываю ваш пример - все работает. Вставляю себе в файл код - не работает. Думал уже, может быть локальные политики где-то косят, загрузил в веб - не работает. Пробовал не раз и не два. Создавал новый файл - то же самое. Кеш очень вряд ли, т.к. при закрытии браузера стоит очистка. Вставил заново, в UTF-8 (до этого было WIN-1251)... Работает! Перегоняю в WIN-1251... РАБОТАЕТ! smile То ли я устал слишком, то ли не пойми что.

В любом случае, благодарю.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)