【问题标题】:html() function with variables带有变量的 html() 函数
【发布时间】:2017-03-06 00:01:06
【问题描述】:

我正在尝试将一些带有变量的 html 代码注入到 JQM UL Listview 中。我遇到的问题是,变量似乎正在抛弃代码,因为当我删除它们时,它会完美地注入 HTML。

这里是sn-p:

$(document).on("pageinit", "#vendorMessages", function() {
    var listView = "";
    pubnub.subscribe(
        {
        channelGroup: getChannelGroup()
        },
        function (status, response) {
            alert("test");
            console.log(status, response);
        }
    );

    pubnub.channelGroups.listChannels(
        {
            channelGroup: getChannelGroup()
        }, 
        function (status, response) {
            response.channels.forEach( function (channel) {
                var channelFormatted = String(channel).split("_");
                var channelMember = channelFormatted[1];
                var temp = "<li onClick='loadChannel("+channel+")'>"+channelMember+"</li>";
                var temp = String(temp);
                listView = listView.concat(temp);
            })
            alert(listView);
        }
    )
    var elem = $("#channels");
    elem.html(elem.text(listView));
    $("#channels").listview("refresh");
})

alert(listView) 返回正确的字符串格式,但代码仍不会添加到&lt;ul&gt;。我尝试了一些建议的东西,甚至切换回 javascript innerHTML 但无济于事。有什么想法吗?

【问题讨论】:

    标签: javascript jquery jquery-mobile


    【解决方案1】:

    改变

    elem.html(elem.text(listView));
    

    elem.html(listView);
    

    elem.text 无法处理 html..

    【讨论】:

    • 所以我这样做了,但仍然一无所获。我觉得var temp = "&lt;li onClick='loadChannel("+channel+")'&gt;"+channelMember+"&lt;/li&gt;"; 有问题,因为如果我只是删除变量,一切都很好。还有其他方法可以将变量放在那里吗?
    • 它可以工作,但这条线会刷新并删除值吗? $("#channels").listview("refresh");
    • 刚刚试过,没有变化。是我没有考虑过的事情!
    • 你能把最后 3 行放在你的警报位置吗?也许该功能尚未完成收到响应..
    • 这似乎也无法解决。
    猜你喜欢
    • 1970-01-01
    • 2012-04-18
    • 2011-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-17
    相关资源
    最近更新 更多