2013-05-07 52 views
0

我想從我的文本區域中刪除MSWord格式信息,但沒有弄清楚如何執行此操作。 這種情況就像我需要將MSWord中的一些內容粘貼到文本框編輯器中一樣。 它被複製得很好,但問題是所有格式也被複制,所以我的300個字符的句子擴展爲20000個字符格式的句子。 任何人都可以告訴我該怎麼做?jquery從文本區域中刪除MS word格式

好吧有些R & D我已經達到了一定的階段。

下面是我從Word文檔複製的文本

Once the user clicks on the Cancel icon for a transaction on the Status of Business, and the transaction is eligible for cancellation, a new screen titled 「Cancel Transaction」 will appear, with the following fields: 

這裏就是我得到了$( 「#textAreaId」)。VAL()

" 

    Normal 
    0 




    false 
    false 
    false 

    EN-US 
    X-NONE 
    X-NONE 




























Once the user clicks on the Cancel icon for a 
transaction on the Status of Business, and the transaction is eligible for 
cancellation, a new screen titled 「Cancel Transaction」 will appear, with the 
following fields: 



/* Style Definitions */ 
table.MsoNormalTable 
    {mso-style-name:"Table Normal"; 
    mso-style-parent:""; 
    line-height:115%; 
    font-:11.0pt;"Calibri","sans-serif"; 
    mso-bidi-"Times New Roman";} 

" 
+0

你可以添加應顯示的文本請 – skyfoot 2013-05-07 11:09:34

+0

文本可能是一個實際上,我在上面的示例中放置的文本只是格式化...而且它非常龐大..所以我只是把一塊大塊放在那裏。我需要顯示的真實文本是沿着頁面 – Gautam 2013-05-07 11:10:40

+0

我想幫助你,但我不想破譯你給出的例子來看看應該顯示什麼。我想看看哪些字符需要刪除 – skyfoot 2013-05-07 11:13:25

回答

3

我終於找到了解決辦法 這裏是它

// removes MS Office generated guff 
function cleanHTML(input) { 
    // 1. remove line breaks/Mso classes 
    var stringStripper = /(\n|\r| class=(")?Mso[a-zA-Z]+(")?)/g; 
    var output = input.replace(stringStripper, ' '); 
    // 2. strip Word generated HTML comments 
    var commentSripper = new RegExp('<!--(.*?)-->','g'); 
    var output = output.replace(commentSripper, ''); 
    var tagStripper = new RegExp('<(/)*(meta|link|span|\\?xml:|st1:|o:|font)(.*?)>','gi'); 
    // 3. remove tags leave content if any 
    output = output.replace(tagStripper, ''); 
    // 4. Remove everything in between and including tags '<style(.)style(.)>' 
    var badTags = ['style', 'script','applet','embed','noframes','noscript']; 

    for (var i=0; i< badTags.length; i++) { 
    tagStripper = new RegExp('<'+badTags[i]+'.*?'+badTags[i]+'(.*?)>', 'gi'); 
    output = output.replace(tagStripper, ''); 
    } 
    // 5. remove attributes ' style="..."' 
    var badAttributes = ['style', 'start']; 
    for (var i=0; i< badAttributes.length; i++) { 
    var attributeStripper = new RegExp(' ' + badAttributes[i] + '="(.*?)"','gi'); 
    output = output.replace(attributeStripper, ''); 
    } 
    return output; 
} 
+0

很棒的功能! – 2016-10-25 12:03:15