строка таблицы клона

В крупных проектах, связавших несколько платформ с различными компиляторами и библиотеками, многими командами и большим количеством людей, мы неоднократно сталкивались с проблемами со статическим станд.:: строки. На некоторых платформах std:string реализация не ориентирована на многопотоковое исполнение. На одной платформе оптимизированный код компилятора пропустил инициализацию локальной формы std:string глобальная статическая константа После преследования нескольких из этих проблем, которые мы только позволяем глобальному статическому consts для созданного в типах.

5
задан Glorfindel 3 April 2019 в 23:00
поделиться

3 ответа

Вы можете подключить прямую трансляцию ко всем кнопкам. Если вы дадите им класс клона, например, следующее будет работать.

$('input.clone').live('click', function(){
   //put jquery this context into a var
   var $btn = $(this);
   //use .closest() to navigate from the buttno to the closest row and clone it
   var $clonedRow = $btn.closest('tr').clone();
   //append the cloned row to end of the table

   //clean ids if you need to
   $clonedRow.find('*').andSelf().filter('[id]').each( function(){
       //clear id or change to something else
       this.id += '_clone';
   });

   //finally append new row to end of table
   $btn.closest('tbody').append( $clonedRow );
});

Обратите внимание: Если у вас есть элементы в строке таблицы с идентификаторами, вам нужно будет выполнить .each через них и установить для них новое значение, иначе вы получите повторяющиеся идентификаторы в dom, которые недействительны и могут вызвать хаос с селекторами jQuery

Это можно сделать так

12
ответ дан 13 December 2019 в 05:39
поделиться

Если вам нужно действительно простое решение, просто используйте innerHTML:

var html = document.getElementById("the row").innerHTML;

var row = document.createElement('p');

row.innerHTML= html;

document.getElementById("table id").appendChild(row);
0
ответ дан 13 December 2019 в 05:39
поделиться

Для каких целей вы хотите использовать данные? Раньше я делал аналогичные вещи с формами ввода данных, и в целом я обнаружил, что пользователям выгодно не манипулировать всем в Javascript, а подключаться для хранения данных на сервере и взаимодействия с AJAX.

Проблема в том, что как только вы разрешаете пользователям выполнять такого рода сложные манипуляции с таблицами, и они случайно нажимают кнопку «Назад», вы получаете множество недовольных игроков. Кодирование временного хранилища в базе данных не намного сложнее, чем манипулирование Javascript, и на самом деле может быть проще, так как вы можете легче разбить операции. Отладка также проще по этой причине (у вас всегда есть доступ для проверки текущего состояния вашей таблицы).

0
ответ дан 13 December 2019 в 05:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: