Jquery V [g] .exec не является функцией при добавлении - PullRequest
0 голосов
/ 05 марта 2019

Я пытаюсь сделать скрипт, который добавляет таблицу в div (div находится на сайте). Я использую функцию:

function makeTable(container, data) {
var table = $("<table/>");
$.each(data, function (rowIndex, r) {
    var row = $("<tr/>");
    $.each(r, function (colIndex, c) {
        row.append($("<t" + (rowIndex === -1 ? "h" : "d") + "/>").append(c));
    });
    table.append(row);
});
return container.append(table);}

Отлично работает в браузерах Firefox и Yandex, но не в Slimjet. Мой стол выглядит так:

    var kw_time_input = $('<input>').attr('id', 'kwtime_i').attr('checked', GM_getValue(nick_p + link_id + 'kwtime')).attr('type', 'checkbox');
var own_kw_time_input = $('<input>').attr('id', 'ownkwtime_i').attr('checked', GM_getValue(nick_p + link_id + 'ownkwtime')).attr('type', 'checkbox');
var kw_bg_color_select = $('<select>').attr('id', 'kw_bg_color_select').attr('class', 'combobox').css('display', 'flex').css('width', 'auto').attr('style', 'text-align-last: center; text-align: center;').css('color', GM_getValue(nick_p + link_id + 'kw_bg_color_select_last'));
var kw_text_color_select = $('<select>').attr('id', 'kw_text_color_select').attr('class', 'combobox').css('display', 'flex').css('width', 'auto').attr('style', 'text-align-last: center; text-align: center;').css('color', GM_getValue(nick_p + link_id + 'kw_text_color_select_last'));
var okw_bg_color_select = $('<select>').attr('id', 'okw_bg_color_select').attr('class', 'combobox').css('display', 'flex').css('width', 'auto').attr('style', 'text-align-last: center; text-align: center;').css('color', GM_getValue(nick_p + link_id + 'okw_bg_color_select_last'));
var okw_text_color_select = $('<select>').attr('id', 'okw_text_color_select').attr('class', 'combobox').css('display', 'flex').css('width', 'auto').attr('style', 'text-align-last: center; text-align: center;').css('color', GM_getValue(nick_p + link_id + 'okw_text_color_select_last'));
var kw_settings_arr = [
    ["Czas do zakończenia najbliższego KW do którego dołączysz", kw_time_input, "Kolor tła:", kw_bg_color_select, "Kolor czcionki:", kw_text_color_select],
    ["Czas do zakończenia założonego KW", own_kw_time_input, "Kolor tła:", okw_bg_color_select, "Kolor czcionki:", okw_text_color_select]
];
makeTable($("#3"), kw_settings_arr);

Я не могу добавить table.append(row);, но я не знаю почему? Что не так?

1 Ответ

0 голосов
/ 07 марта 2019

Решение: var table = $("<table/>").append('<tbody/>'); а также $('tbody', table).append(row); Чтобы быть недействительным HTML строка / объект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...