JQuery Клонирование элемента

Есть такая строка

<p id="input-desc"><input type="text" name="var_desc[]" placeholder="Название параметра" required></p>

И есть кнопка для её клонирования, которая выполняет функцию

function clone_input(target)
{
        $(target).clone().insertAfter(target);
}

но она вставляет новый элемент после первого input-desc, как сделать, чтоб новый элемент добавлялся в конце? И ещё чтоб в новой строке обнулялось значение value


Ответы (1 шт):

Автор решения: Andrey Maslov

вообще, на мой взгляд, плохая идея плодить элементы с одинаковым id. я бы заменил id="input-desc" на class="input-desc" и если тебе нужно, что бы новый элемент всегда вставлялся после последнего такого же то $(target).clone().insertAfter(".input-desc:last");

если тебе нужно что бы функция оперировала именно target, то можно идти другим путем вызывать ее как: clone_input('.input-desc:last') тогда твою функцию можно оставить без изменений, а если нужно, что бы еще и значение в поле для ввода очищалось, тогда так: $(target).clone().insertAfter($(target)).find("input").val("");

→ Ссылка