今天在用wangeditor編輯器寫后台管理文章頁,在保存文章后需要調用一次編輯草稿,這時候需要把編輯的內容拿到編輯器中,結果輸出了我的標簽:<p>您好</p>.經過我的console.log(data)=="<p>打沙包</p> "。沒錯,我的<>被轉義了,因為不轉義的話沒辦法上傳。
接下來,就是我從其他地方找來的正則。哈哈哈~
//去掉html標簽
function removeHtmlTab(tab) {
return tab.replace(/<[^<>]+?>/g,'');//刪除所有HTML標簽
}
//普通字符轉換成轉意符
function html2Escape(sHtml) {
return sHtml.replace(/[<>&"]/g,function(c){return {'<':'<','>':'>','&':'&','"':'"'}[c];});
}
我是用的下面這個,就好了。嘿嘿~
//轉意符換成普通字符
function escape2Html(str) {
var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'};
return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){return arrEntities[t];});
}
// 轉成空格
function nbsp2Space(str) {
var arrEntities = {'nbsp' : ' '};
return str.replace(/&(nbsp);/ig, function(all, t){return arrEntities[t]})
}
//回車轉為br標簽
function return2Br(str) {
return str.replace(/\r?\n/g,"<br />");
}
//去除開頭結尾換行,並將連續3次以上換行轉換成2次換行
function trimBr(str) {
str=str.replace(/((\s| )*\r?\n){3,}/g,"\r\n\r\n");//限制最多2次換行
str=str.replace(/^((\s| )*\r?\n)+/g,'');//清除開頭換行
str=str.replace(/((\s| )*\r?\n)+$/g,'');//清除結尾換行
return str;
}
// 將多個連續空格合並成一個空格
function mergeSpace(str) {
str=str.replace(/(\s| )+/g,' ');
return str;
}
