js處理富文本編輯器轉義、去除轉義、去除HTML標籤

富文本編輯器生成的HTML標籤,進行轉義,而後寫入數據庫,防止腳本注入:html

function htmlEncode(value){
  return $('<div/>').text(value).html();
}

從數據庫拿出的轉義後的HTML標籤內容,先得去除轉義,而後再去除HTML標籤,是生成縮略文字。數據庫

  /*移除HTML標籤代碼*/
    function removeHTMLTag(str) {
            str = str.replace(/<\/?[^>]*>/g,''); //去除HTML tag
            str = str.replace(/[ | ]*\n/g,'\n'); //去除行尾空白
            //str = str.replace(/\n[\s| | ]*\r/g,'\n'); //去除多餘空行
            str=str.replace(/ /ig,'');//去掉 
            return str;
    }
    //轉意符換成普通字符
    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 escape2Html(str) { 
     var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'}; 
     return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){return arrEntities[t];}); 
    } 
相關文章
相關標籤/搜索