我正在尝试复制 html 文本并将其粘贴到 TinyMCE 中,只需使用CTRL+ C, CTRL+即可V。
我很难做到这一点,因为 TinyMCE 不断尝试保持初始格式。我正在使用 Rails。
你知道解决这个问题的任何方法吗?
我正在尝试复制 html 文本并将其粘贴到 TinyMCE 中,只需使用CTRL+ C, CTRL+即可V。
我很难做到这一点,因为 TinyMCE 不断尝试保持初始格式。我正在使用 Rails。
你知道解决这个问题的任何方法吗?
您可以配置 tinymce 以在粘贴时去除所有不需要的标签。
为此,请使用 tinymce 配置参数paste_preprocess:
paste_preprocess : function(pl, o) {
o.content = window.strip_tags( o.content,'<p><div><ul><ol><li><br>' );
},
使用函数 strip_tags 如下:
// Strips HTML and PHP tags from a string
// returns 1: 'Kevin <b>van</b> <i>Zonneveld</i>'
// example 2: strip_tags('<p>Kevin <img src="someimage.png" onmouseover="someFunction()">van <i>Zonneveld</i></p>', '<p>');
// returns 2: '<p>Kevin van Zonneveld</p>'
// example 3: strip_tags("<a href='http://kevin.vanzonneveld.net'>Kevin van Zonneveld</a>", "<a>");
// returns 3: '<a href='http://kevin.vanzonneveld.net'>Kevin van Zonneveld</a>'
// example 4: strip_tags('1 < 5 5 > 1');
// returns 4: '1 < 5 5 > 1'
function strip_tags (str, allowed_tags)
{
var key = '', allowed = false;
var matches = []; var allowed_array = [];
var allowed_tag = '';
var i = 0;
var k = '';
var html = '';
var replacer = function (search, replace, str) {
return str.split(search).join(replace);
};
// Build allowes tags associative array
if (allowed_tags) {
allowed_array = allowed_tags.match(/([a-zA-Z0-9]+)/gi);
}
str += '';
// Match tags
matches = str.match(/(<\/?[\S][^>]*>)/gi);
// Go through all HTML tags
for (key in matches) {
if (isNaN(key)) {
// IE7 Hack
continue;
}
// Save HTML tag
html = matches[key].toString();
// Is tag not in allowed list? Remove from str!
allowed = false;
// Go through all allowed tags
for (k in allowed_array) { // Init
allowed_tag = allowed_array[k];
i = -1;
if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+'>');}
if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+' ');}
if (i != 0) { i = html.toLowerCase().indexOf('</'+allowed_tag) ;}
// Determine
if (i == 0) { allowed = true;
break;
}
}
if (!allowed) {
str = replacer(html, "", str); // Custom replace. No regexing
}
}
return str;
}
你可能也想仔细看看这个 SO-Thread:TinyMCE Paste As Plain Text