Не удалось выполнить 'appendChild' в 'Ошибка' узла при добавлении в неупорядоченный список

Вот мои два цента:

int split (const char *txt, char delim, char ***tokens)
{
    int *tklen, *t, count = 1;
    char **arr, *p = (char *) txt;

    while (*p != '\0') if (*p++ == delim) count += 1;
    t = tklen = calloc (count, sizeof (int));
    for (p = (char *) txt; *p != '\0'; p++) *p == delim ? *t++ : (*t)++;
    *tokens = arr = malloc (count * sizeof (char *));
    t = tklen;
    p = *arr++ = calloc (*(t++) + 1, sizeof (char *));
    while (*txt != '\0')
    {
        if (*txt == delim)
        {
            p = *arr++ = calloc (*(t++) + 1, sizeof (char *));
            txt++;
        }
        else *p++ = *txt++;
    }
    free (tklen);
    return count;
}

Использование:

char **tokens;
int count, i;
const char *str = "JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC";

count = split (str, ',', &tokens);
for (i = 0; i < count; i++) printf ("%s\n", tokens[i]);

/* freeing tokens */
for (i = 0; i < count; i++) free (tokens[i]);
free (tokens);
1
задан V.Le 16 January 2019 в 21:22
поделиться

1 ответ

Вам необходимо использовать .insertAdjacentHTML () вместо .appendChild (contents); , потому что вы пытаетесь добавить строку html, а не узел html. [115 ]

var data = [{
    "id": "1",
    "name": "Apple"
},{
    "id": "2",
    "name": "Banana"
}];

var section = document.createElement("ul");
section.setAttribute('class', "col-12 nav nav-tabs nav-fill");
var template = document.querySelector('#lists').innerHTML;
var contents = '';

for(var i = 0; i < data.length; i++){
    contents += template.replace(/\{\{name\}\}/, data[i].name);
}

section.insertAdjacentHTML('beforeend', contents);
document.getElementById('test').appendChild(section);
<div class="row" id="test">
    <ul type="template" id="lists">
        <li class="nav-item col-lg-2">
            <a class="nav-link active" href="#">{{name}}</a>
        </li>
    </ul>
</div>

0
ответ дан gaetanoM 16 January 2019 в 21:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: