2

以下は、すべての style/formatting/html タグを削除してプレーン テキストとして貼り付ける現在の Tinymce 構成ですが、私の顧客は表を貼り付けたいと考えています。したがって、ms word からコピーして貼り付けるときに、(のみ) テーブルを貼り付けられるように tinymce を改善したいと思います。

tinyMCE.init({
            theme: "advanced",
            mode: "exact",
            elements: "txtTextbox1",
            plugins : "paste,table,directionality,preview,iespell,wordcount,style",        
            theme_advanced_buttons1: "bold,italic,underline,|,cut,copy,paste,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,|,undo,redo,|,preview,iespell",
            theme_advanced_buttons2: "tablecontrols,|,link,unlink",
            //theme_advanced_buttons3: "tablecontrols,|,link,unlink",
            theme_advanced_toolbar_location: "top",
            theme_advanced_toolbar_align: "left",
            theme_advanced_statusbar_location: "bottom",
            force_p_newlines: false,
            force_br_newlines: true,
            forced_root_block: '',
            paste_convert_middot_lists: false,
            paste_text_sticky: true,
            paste_strip_class_attributes: "all",
            paste_remove_styles: true,
            paste_remove_spans: true,
            paste_block_drop: true,
            paste_text_sticky_default: true,

            setup: function (ed) {
                ed.onInit.add(function (ed) {
                    ed.pasteAsPlainText = true;
                    ed.controlManager.setActive("pastetext", true);
                });
            }
        });

以下の編集 は私の最終的なコードです

tinyMCE.init
        ({
            theme: "advanced",
            mode: "exact",
            elements: "txtTextbox1",
            plugins : "paste,table,directionality,preview,iespell,wordcount,style",        
            theme_advanced_buttons1: "bold,italic,underline,|,cut,copy,paste,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,|,undo,redo,|,preview,iespell",
            theme_advanced_buttons2: "tablecontrols,|,link,unlink",
            theme_advanced_toolbar_location: "top",
            theme_advanced_toolbar_align: "left",
            theme_advanced_statusbar_location: "bottom",
            force_p_newlines: false,
            force_br_newlines: true,
            forced_root_block: '',
            paste_convert_middot_lists: false,            

            paste_preprocess : function(pl, o) 
            {  
                o.content = strip_tags( o.content,'<table><tr><td>' );
            },            
        });


function strip_tags (str, allowed_tags)
{
}
4

2 に答える 2

2

解決策は、paste_preprocess を使用することです。このSO スレッドでは、プレーン テキストとして貼り付ける方法を見つけることができますが、テーブルの定義を維持するためtabletbody、貼り付け時に削除されないようにしますtdtr

于 2012-11-07T15:09:01.080 に答える