1

I was wondering if there was a way to detect (or at least make a good assumption) whether text pasted into a textarea includes content copied from an HTML table?

I'm finding users of my website are pasting tabular data (from other websites) into their comments and I'm wanting to clean up the way my website displays those comments.

I'm using PHP, but I'm not too fussed if there's a way to do this with Javascript.

And bonus points if your suggestion can keep the table formatting :)

4

1 回答 1

1

纯文本区域无法接收格式化内容。如果您的用户从其他站点复制表格、div 或任何 HTML 结构并粘贴到文本区域,您将只能访问所复制内容的纯可见文本,而不是 HTML 代码。使用文本区域,粘贴 HTML 代码的唯一方法是您的用户直接复制代码 =)。

另一种方法是使用像 Redactor 或 CKeditor 这样的 WYSIWYG 可以保留富文本,您将能够获得用户粘贴在那里的 HTML。

或者您可以简化属性 contenteditable 并将其与其他标签(如 div)一起使用,并测试是否有使用正则表达式的表,这样:

<div id="yourDiv" contenteditable>Paste a table here!!</div>

var yourHTML = document.getElementById("yourDiv").innerHTML;
var thereIsATableHere = /<table[^>]*>(.*?)<\/table>/.test(yourHTML);
于 2013-05-24T02:30:45.093 回答