① 去掉百度編輯器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里完成