【问题标题】:Jquery V[g].exec is not a function when append追加时 Jquery V[g].exec 不是函数
【发布时间】:2019-07-26 21:45:00
【问题描述】:

我尝试制作一个将表格附加到 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); 但我不知道为什么? 怎么了?

【问题讨论】:

  • 我认为问题出在var table = $("&lt;table/&gt;"); 中,当我尝试使var table = $("&lt;div/&gt;"); 起作用时,可以毫无问题地附加row。如何解决?

标签: javascript jquery error-handling append


【解决方案1】:

解决方案: var table = $("&lt;table/&gt;").append('&lt;tbody/&gt;');$('tbody', table).append(row); 成为有效的 HTML 字符串/对象。

【讨论】:

    猜你喜欢
    • 2016-11-14
    • 2013-04-25
    • 1970-01-01
    • 2011-08-31
    • 2020-03-29
    • 2014-11-01
    • 2015-07-06
    • 2018-02-01
    • 1970-01-01
    相关资源
    最近更新 更多