① 去掉百度编辑器uEditor自动生成的p br标签
网络的Ueditor编辑器出于安全xìng考虑,用户在html模式下粘贴进去的html文档会自动被去除样式和转义。虽然安全的,但是非常不方便。
做一下修改把这个功能去掉。
一、打开ueditor.all.js
二、大概9300行找到 ///plugin 编辑器默认的过滤转换机制,把下面的
'allowDivTransToP':true
值改成false。为true的时候会自动把div转成p。
三、大概9429行,有个case 'li',这个是把li里面的样式去掉,把这个case注释掉。
四、大概14058行,下面的第一个utils.each功能注释掉,这个是自动给li里面的内容增加一个p。
五、大概14220行,
node.className = utils.trim(node.className.replace(/list-paddingleft-\w+/,'')) + ' list-paddingleft-' + type;
注释掉,这个是自动给ul增加一个内置的样式。
下面的14222行
li.style.cssText && (li.style.cssText = '');
注释掉,这个是自动去除粘贴进去的代码的li的style样式
至此,我们粘贴进去的html格式的ul和li就不会被转义了。
更多
② ueditor1.4.3阻止过滤span标签
打开ueditor.all.js文件,搜索“allowDivTransToP”,找到以下代码:
//进入编辑器的内容处理
me.addInputRule(function (root) {
....此处代码省略
//进行默认的处理
root.traversal(function (node) {
if (node.type == 'element') {
if (!dtd.$cdata[node.tagName] && me.options.autoClearEmptyNode && dtd.$inline[node.tagName] && !dtd.$empty[node.tagName] && (!node.attrs || utils.isEmptyObject(node.attrs))) {
if (!node.firstChild()) node.parentNode.removeChild(node);
else if (node.tagName == 'span' && (!node.attrs || utils.isEmptyObject(node.attrs))) {
//取消默认过滤span标签
//node.parentNode.removeChild(node, true)
}
return;
}
....此处代码省略
}
});
//从编辑器出去的内容处理
me.addOutputRule(function (root) {
var val;
root.traversal(function (node) {
if (node.type == 'element') {
if (me.options.autoClearEmptyNode && dtd.$inline[node.tagName] && !dtd.$empty[node.tagName] && (!node.attrs || utils.isEmptyObject(node.attrs))) {
if (!node.firstChild()) node.parentNode.removeChild(node);
else if (node.tagName == 'span' && (!node.attrs || utils.isEmptyObject(node.attrs))) {
//取消默认过滤span标签
//node.parentNode.removeChild(node, true)
}
return;
}
...此处代码省略
}
})
});
说明:加粗部分为修改代码,将两端代码注释掉即可
③ ueditor编辑器,Ctrl+C复制样式时,width设为百分比会被转换为“px”,请问如何屏蔽此功能
网络的Ueditor编辑器出于安全性考虑,用户在html模式下粘贴进去的html文档会自动被去除样式和转义。虽然安全的,但是非常不方便。
做一下修改把这个功能去掉。
一、打开ueditor.all.js
二、大概9300行找到 ///plugin 编辑器默认的过滤转换机制,把下面的
'allowDivTransToP':true
值改成false。为true的时候会自动把div转成p。
三、大概9429行,有个case 'li',这个是把li里面的样式去掉,把这个case注释掉。
四、大概14058行,下面的第一个utils.each功能注释掉,这个是自动给li里面的内容增加一个p。
五、大概14220行,
node.className = utils.trim(node.className.replace(/list-paddingleft-\w+/,'')) + ' list-paddingleft-' + type;
注释掉,这个是自动给ul增加一个内置的样式。
下面的14222行
li.style.cssText && (li.style.cssText = '');
注释掉,这个是自动去除粘贴进去的代码的li的style样式
至此,我们粘贴进去的html格式的ul和li就不会被转义了。
④ ueditor 如何过滤html标签
你可以在数据保存的时候,通过你服务端语言来过滤;
或者再数据保存前,用js过滤之后再进行保存。
但既然选择使用富文本编辑器,何必在数据库中显示不带HTML标签的内容?
⑤ 百度编辑器UEditor 相关问题,ID消失了呢
你这边也有个content不知道是不是这个左右了,你把textarea的id换个名称,比如cont就好,在试试
⑥ ueditor里插入的script,style等标签被过滤掉怎么解决
插入格式
种放<head></head>间定义<style>标签内部
<style type="text/css">
#div{
width:100px;
height:100pxl;
}
</style>
种元素使用(推荐)
<div style="width:100pxl;heigth:100px;" ></div>
另外种css存外部用<head>内用专<link>标签链接进属
导入等几种
⑦ ueditor filtertxtrules 怎么用
首先我们需要来认识下UEditor,它是由网络web前端研发部开发所见即所得富文本web编辑器,并且是基于BSD协议的开源产品,允许自由使用和修改,这也是小编最看中它的地方,开源就意味着可以自己来定制这个编辑器。
接着我们来下载这个编辑器,网络一下UEditor,第一个就是它的官网。我们点击下载选项,我们发现一共有两个版本供我们选择,一个是UBuilder,一个是开发版,通过下面注释的红色小字我们可以了解到UBuilder和开发版的区别。一般情况下我们选择UBuilder版本即可。
跟我们以往下载软件的方式不同,UEditor采用选择性下载。首先是可见功能的选择,共有基本,插入,格式化,表格四大组,每组下面都有若干功能按钮,我们可以根据自己的需求来进行选择,如果双击四大组则表示全选该组按钮。如果对选择的按钮不满意还可以点击清空选择,有一点要提示的是如果点击清空选择会清楚掉你原先做过的所有选择。
接着就是隐藏功能,语言,服务端版本的选择,隐藏功能默认的是全选,如非必要还是不要更改为好。语言选项共分为了中文和英文两种,默认的是只下载中文语言包,如果你有需要用到英文的话可以把英文包也加上。服务端版本目前提供了三种,分别为PHP,.NET,JSP,选择完毕后我们就可以点击下载资源包了。
我们解压缩下载下来的UEditor压缩包。我们双击打开index.html文件,从标题上不难看出,这是一个演示文件,比较详细的记录了UEditor的创建和使用,但是这个文件中的很多代码我们都用不到,我们可以精简下代码,只留下需要的代码即可。
其实使用UEditor创建一个编辑器还是很简单的一件事情,首先就是引入俩个js文件,分别为editor_config.js和editor_all.js。然后就是js创建一个可编辑区域,用来创建编辑器,需要注明id,类型为text/plain,最后实例化编辑器即可(具体代码如下图所示,个别代码并未显示完全,仅供参考使用)。
如果将UEditor应用到项目中我们还需要对编辑器的路径进行设置。我们打开editor_config.js文件,找到window.UEDITOR_HOME_URL,然后配置编辑器所在文件的路径,这个路径可以是绝对路径也可以是相对路径。此处的配置仅对这个编辑器起作用,如果你使用了多个UEditor则需要分别进行设置。
⑧ ueditor里插入的script,style等标签被过滤掉怎么解决
提交时用escape把字符串编码,输出时unescape再解码 自己网络html实体字符,进行替换 修改php 比较推荐1,而且编码之前可以自己把危险标签去掉,比如iframe和script 1,2用js在表单的onsubmit里完成