2017-06-01 84 views
0

我有一个contenteditable div。当用户在其中粘贴文本时。它带有html标签,我想删除除b,i,u,blockquote,h3标签之外的所有标签。在contenteditable div中删除jQuery的一些标签

我该如何做到这一点? 谢谢你的帮助。

+0

请仔细阅读[问]比最终为我们提供一些代码用[MCVE。如果你还不清楚这个网站是如何工作的,一定要参加[参观]。 –

回答

0

var ignoreTags = "b, i, u, blockquote, h3"; 
 

 

 
$("[contenteditable]").on({ 
 
    paste : function() { 
 
    setTimeout(function(){ 
 
     $(this).find("*").not(ignoreTags).contents().unwrap(); 
 
    }.bind(this), 0); 
 
    } 
 
});
p{color: blue;} 
 
[contenteditable]{background:#eee;padding:16px;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<h2>H2. Unwrap me.</h2> 
 
<h3>H3. Keep me.</h3> 
 
<blockquote>blockquote</blockquote> 
 
<p>Unwrap Paragraph but keep <b>bold</b> and <i>italic</i></p> 
 

 
<div contenteditable>pasteHere</div>