![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 19:55
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Rasy,
очень внимательно читаете, но как гончая ... Зачем же один цикл на изменение, затем второй на объединение, если можно сразу к коллекции $.map($('[data-name]'), function(...).join(',')? И .get() здесь и нафик не нужен.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:02
|
Профессор
|
|
Регистрация: 17.06.2016
Сообщений: 509
|
|
laimas,
С утилитой map лучше, но автор сразу не правильно сформулировал задачу и такой вариант не кто не смог бы родить.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:03
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Янковиц,
если 10 и прочее к действительно к индексу привязано, а на выходе строка, то все намного проще, чем советуют:
var s = $.map($('[data-name]'), function(e, i) {
return e.getAttribute('data-name') + ':' + ++i * 10
}).join(',');
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:03
|
Профессор
|
|
Регистрация: 17.11.2014
Сообщений: 403
|
|
Сообщение от Rasy
|
Янковиц,
снизу - alert(str);
|
У меня два блока с идентичным содержанием, как конкретизировать, из какого блока считывать data-name?
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:04
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от Rasy
|
но автор сразу не правильно сформулировал задачу
|
Даже так? А я значит экстрасенс?
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:07
|
Профессор
|
|
Регистрация: 17.06.2016
Сообщений: 509
|
|
Сообщение от laimas
|
Даже так? А я значит экстрасенс?
|
Я про первый пост до уточнений. Думаю не экстрасенс.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:11
|
Профессор
|
|
Регистрация: 17.11.2014
Сообщений: 403
|
|
И еще один момент. Вообще, это часть drag and drop системы.
Хватаю из одного блока, и перемещаю в другой. При тестировании, я динамически меняю количество div. Код предложенный в топике повесил на клик кнопки. Однако в alert выводит список с data-name элементов при загрузки страницы, но не фиксирует при динамическое изменение... Как это решить? И еще, данные берет из первого блока а не из второго...
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:12
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от Янковиц
|
У меня два блока с идентичным содержанием, как конкретизировать
|
Либо первый, либо последний, выбирайте какой нужен:
var s = $.map($('[data-name]').first(), function(e, i) {...
//или
var s = $.map($('[data-name]').last(), function(e, i) {...
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:14
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от Янковиц
|
Однако в alert выводит список с data-name элементов при загрузки страницы, но не фиксирует при динамическое изменение...
|
Для этого существует делегирование, либо данный обработчик добавляется динамически после добавления новых элементов.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
05.10.2017, 20:17
|
Профессор
|
|
Регистрация: 17.11.2014
Сообщений: 403
|
|
Сообщение от laimas
|
Для этого существует делегирование, либо данный обработчик добавляется динамически после добавления новых элементов.
|
Делегирование это через on?
Типа такого??:
$('body').on('click', '.save-filter', function(){
var str = $.map($('[data-name]').last(), function(e, i) {
return e.getAttribute('data-name') + ':' + ++i * 10
}).join(',');
alert(str);
});
|
|
|
|