【问题标题】:How to insert jQuery HTML string into HTML Document如何将 jQuery HTML 字符串插入 HTML 文档
【发布时间】:2019-01-20 10:06:02
【问题描述】:

我在将 jQuery HTML 字符串插入 HTML 文档时遇到问题,更具体地说是插入到我的 html 正文的页脚中。

问题是当我附加经过$.parseHTML 的 jQuery 字符串时,它出现在我的屏幕上,我可以检查它。但是,打开查看页面源代码后,在 HTML 中却找不到。

let chatWindow = '<section class="module"><header class="top-bar">' + userName + '</header>';
            chatWindow += '<ol class="discussion">';

            for (let i = data[0].length - 2; i >= 0; i -= 3) {
                if (data[0][i - 1] == data[1]) {
                    chatWindow += '<li class="self"><div class="avatar"></div><div class="messages">';
                } else {
                    chatWindow += '<li class="other"><div class="avatar">';
                    chatWindow += '<img src="' + data[2] + '"/></div><div class="messages">';
                }
                chatWindow += '<p>' + data[0][i] + '</p>';
            }
            chatWindow += '<time datetime="2009-11-13T20:00"></time></div></li></ol>';
            chatWindow += '<textarea class="discussion-chat"></textarea></section>';

            chatOutput = $.parseHTML(chatWindow);
            console.log(chatOutput);

            $('.module').css('display', 'block');
            $('footer').append(chatOutput);

为了澄清我笨拙的代码,它只是一个通过$.getJSON() 函数生成的弹出聊天窗口。

当我使用$.parseHTML 时,它似乎为我提供了正确的 DOM 格式,但追加不会使其出现在 HTML 中。

任何想法如何将chatWindow var 插入到我的 HTML 中?

谢谢

【问题讨论】:

    标签: jquery html


    【解决方案1】:

    它出现在我的屏幕上,我可以检查它

    然后它按预期工作。

    然而,打开查看页面源代码后,我在 HTML 中找不到它。

    因为页面源是服务器返回的页面的原始源代码。在客户端对 DOM 的修改不会改变该历史记录。

    听起来您的代码按设计运行,您只是不清楚“查看页面源代码”的作用。它不会显示 JavaScript 修改后 DOM 的当前状态,它会显示从服务器返回的内容。检查 DOM 会显示当前状态,从您的描述来看,当前状态听起来是正确的。

    【讨论】:

    • 好的,但是如果我有 jQuery 函数 来监听 .discussion-chat 文本区域上的keypress 事件,该事件由jQuery 变量,为什么它没有反应?
    • @PeterHoloubek:如果您尝试将事件侦听器附加到尚不存在的 DOM 元素,那完全是另一个问题。这不是您所要求的,但如果这是您要解决的根本问题,那么这就是您要寻找的副本:stackoverflow.com/questions/203198/…
    猜你喜欢
    • 2014-03-12
    • 1970-01-01
    • 2010-10-23
    • 1970-01-01
    • 2014-11-11
    • 1970-01-01
    • 1970-01-01
    • 2015-04-04
    • 2022-01-02
    相关资源
    最近更新 更多