Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   After clone -> change name of new elements (https://javascript.ru/forum/dom-window/71912-after-clone-change-name-new-elements.html)

alixan23 21.12.2017 14:43

After clone -> change name of new elements
 
Добрый день дорогие форумчане.


Обменять имя элемента через attr() не сложно. Для этого прежде нужно обратиться к самому элементу. И вуоля - всё готово.

Мне нужен ваш совет, как обратиться к ново-созданному элементу после Clone()?

Объясню подробнее. Есть официальные доки -
тут официальный пример.

На них показан пример с Drag&Drop. В моём случае я драгаю <input name='a1'>. И после каждого Drag&Drop, создаётся клон, с точно таким же именем. Мне нужно обратиться к ново-созданному (клонированному) элементу, чтобы изменить его имя.

Вариант name='a1[]' - хорош, но в моём случае не подходит. У меня сложная форма, в которой что-то вроде несколько форм, со своими внутренними input, select и т.д.


Есть у кого какие мысли на этот счёт?

Заранее, всех благодарю за участие.

laimas 21.12.2017 15:12

Ну в общем то не сложно - где сие творится, там и сделать замену, типа $(selector).clone().attr(name, value)

alixan23 21.12.2017 15:23

Цитата:

Сообщение от laimas (Сообщение 473441)
Ну в общем то не сложно - где сие творится, там и сделать замену, типа $(selector).clone().attr(name, value)

идея хорошая, тут и не поспоришь.

Проблема в том, что сам процесс Clone происходит на фоне, внутри библиотеки/фреймворка.

Есть какой-нибудь альтернативный способ?

alixan23 21.12.2017 15:38

Мне кажется, должна быть какая-нибудь callback функция.

laimas 21.12.2017 15:56

Цитата:

Сообщение от alixan23
Есть какой-нибудь альтернативный способ?

А что может быть кроме как получить объект и изменить?

Цитата:

Сообщение от alixan23
Мне кажется, должна быть какая-нибудь callback функция

Должна быть - окончание процесса перетаскивания, где то что переносят и есть клонируемый объект.

рони 21.12.2017 16:42

alixan23,
сделайте пример (минимум, только необходимое), а лучше прочтите документацию(там всё есть), если будет пример, напишите какие имена будут у клонов.
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

alixan23 21.12.2017 18:24

Цитата:

Сообщение от рони
а лучше прочтите документацию(там всё есть)

вы правы, я так и сделал и всё получилось, спасибо вам за совет.

Если в 2-ух словах, то в доках оказалась callback функция. С помощью неё можно обращаться к клонированному элементу.

Большое спасибо всем за участие.


Часовой пояс GMT +3, время: 19:33.