Страницы

Поиск по вопросам

понедельник, 8 июля 2019 г.

Как изменить HTML в массиве?

Формирую данные с сервера динамически и храню промежуточные данные задачи в массиве примерно в таком виде.

Задача раз
Сегодня
Готово

Код с помощью которого формирую данные
function getAndRenderTasks(){ $.getJSON("/tasks/api/v1.0/tasks", function (data) {
var tasks = [] // Место хранения всех задач
$.each( data, function(key, val) { var taskData = [] // промежуточные данные
for (var i = 0; i < val.length; i++) {
$.each(val[i], function(key1, val1){ taskData.push( "
"+val1+"
") }) }
tasks.push( "
"+taskData.join('')+"

")
})
$( "
", { "class": "my-new-list", html: tasks.join("") }).appendTo( "body") }) }
Проблема в том, что прежде чем отрендерить список задач мне необходимо в некоторые из div задачи, добавить еще данные, типа ссылок, иконок и так далее... как мне сделать это с помощью js что бы получилось что то типа:
$event.details
23:33-23:45


Буду очень благодарна


Ответ

Если я правильно понял задачу, то вот так:
function getAndRenderTasks() { $.getJSON("/tasks/api/v1.0/tasks", function(data) {
var tasks = [] // Место хранения всех задач
$.each(data, function(key, val) { var taskData = [] // промежуточные данные
for (var i = 0; i < val.length; i++) {
$.each(val[i], function(key1, val1) { var $elem = $("

" + val1 + "
");
// Изменяете в элементе что нужно
taskData.push( $elem.get(0).outerHTML ); }) }
var $task = $("
" + taskData.join('') + "

");
// Изменяете в элементе что нужно
tasks.push( $task.get(0).outerHTML );
})
$("
", { "class": "my-new-list", html: tasks.join("") }).appendTo("body") }) }

Комментариев нет:

Отправить комментарий