在表格单元格内添加段落

时间:2019-02-07 12:11:42

标签: javascript jquery html aem

在这种情况下,当我们在表格单元格中键入一些文本时,它只是简单的文本,例如:

<td>some text</td>

但是,如果我按Enter键以中断文本,则第一行和下一行将得到<p>。例如:

<td>
<p>some text</p>
<p>second text after break</p>
</td>

我想从输入开始就将文字包裹在<p>中。结果是:

<td><p>some text</p></td>

有什么想法吗?在这部分代码的下方。

updateTableCells: function(richText) {
        var that = this,
            tdEl = richText.querySelectorAll('td');

        [].forEach.call(tdEl, function(td) {
            if (!td.children.length) {
                that.applyParagraph(td);
            }
        });
    },

    applyParagraph: function(element) {
        var newPar = document.createElement('p');

        newPar.innerHTML = element.innerHTML;
        element.innerHTML = '';
        element.appendChild(newPar);
    },

    parseRichTextContent: function(richText) {
        var par = richText.querySelectorAll('p'),
            orderedLists = richText.querySelectorAll('ol'),
            unorderedLists = richText.querySelectorAll('ul');

        [].forEach.call(par, function (paragraph) {
            if (paragraph.classList.length) {
                paragraph.classList.add('class-par16');
            }
        });

        [].forEach.call(orderedLists, function(ol) {
            ol.classList.add('listwall');
        });

        [].forEach.call(unorderedLists, function(ul) {
            ul.classList.add('ulistwall');
        });
    },

1 个答案:

答案 0 :(得分:-1)

您的问题尚不清楚,但请不要使用<p></p>进行尝试。

<td>some text <br> second text after break</td>
  • 如果td内的句子较短,则写&nbsp;而不是空格以保持间距

希望对您有帮助:)祝您好运