Jquery - порядок вставки элементов

104
12 августа 2019, 19:40

Почему </details> вставляется раньше чем user?

function renderGroup(group) {
                var body = $("body");
                body.append("<details open='open'><summary>" + group.name + "</summary>");
                for (var i = 0; i < group.users.length; i++){
                    body.append("user");
                }
                body.append("</details>");
            }

На выходе:

<body>
<details open="">
<summary>1</summary>
</details>
useruser
<details>
<summary>2</summary>
</details>
useruser
</body>
Answer 1

Дело в том, что когда вы пишете body.append("<details open='open'><summary>" + group.name + "</summary>"); браузер автоматически добавляет закрывающий тег. Для того чтобы этого избежать лучше делать так:

function renderGroup(group) { 
    var body = $('body'); 
    var details = '<details open="open"><summary>' + group.name + '</summary>'; 
    for (var i = 0; i < group.users.length; i++){ 
        details += group.users[i]; 
    } 
    details += '</details>'; 
    body.append(details); 
}

READ ALSO
Запуск 1 экземпляра программы на каждого пользователя

Запуск 1 экземпляра программы на каждого пользователя

Представим терминал, на нем сидит n-ое кол-во пользователейКак сделать так, что бы каждый пользователь мог запустить 1 экземпляр программы?

87
Проблема при добавлении Framework сборок в SQL Server

Проблема при добавлении Framework сборок в SQL Server

Есть необходимость добавления CLR сборки в связке с самописной библиотекой классов (подключение к внешнему веб-сервису)При установке библиотеки...

136