HTML数据显示为文本

时间:2017-10-31 17:28:45

标签: javascript html

我正在创建一个HTML页面,它将显示另一个应用程序发送的一些数据,另一个应用程序仅以text格式发送数据,这就是我的HTML中<呈现的原因作为&lt;>作为&rt;等等......

在我的HTML中,我需要创建一个div并将整个内容放在div内。

以下是我的Javascript。

function showResponse(lexResponse) {
    var conversationDiv = document.getElementById('conversation');
    var responsePara = document.createElement("P");
    responsePara.className = 'lexResponse';
    if (lexResponse.message) {
        createOrUpdateCompositeLink(lexResponse.message, responsePara);
    }
    conversationDiv.appendChild(responsePara);
    conversationDiv.scrollTop = conversationDiv.scrollHeight;
}

function createOrUpdateCompositeLink(input, ref) {
    if (ref) {
        if (input.match(/href/g)) {
            var isLinkText = input.match(/href/g);
            var elementChild;
            if (isLinkText) {
                elementChild = document.createElement('span');
                elementChild.innerHTML = input;
            } else {
                elementChild = document.createTextNode(input);
            }
            ref.appendChild(elementChild);
            return ref;
        } else {
            console.log("Entered Blocl");
            var elementChild;
            elementChild = document.createElement('div');
            elementChild.innerHTML = convertHTML(input);
            ref.appendChild(elementChild);
            return ref;
        }
    } else {
        var element = document.createElement('p');
        element.innerHTML = input;
        return element;
    }
}

function convertHTML(str) {
    var entityPairs = [
        { character: '&', html: '&amp;' },
        { character: '<', html: '&lt;' },
        { character: '>', html: '&gt;' },
        { character: "'", html: '&apos;' },
        { character: '"', html: '&quot;' },
    ];

    entityPairs.forEach(function (pair) {
        var reg = new RegExp(pair.character, 'g');
            str = str.replace(reg, pair.html);
    });
    return str;
}

我在lexResponse.message得到了我的输入,我需要渲染它,当我执行console.log时,我得到输出为

Sure. I can assist you with you that, do you have any preference with 'Date' criteria? You can say something like "before/ after Oct 20th 2017" or "since July 1st 2017". <select><option value="since">Since</option><option value="before">Before</option></select> <input type="date" />

请让我知道如何呈现数据以HTML格式显示。

由于

0 个答案:

没有答案