-2

CKEditor テキストエリアに HTML コードを追加しようとすると問題が発生し、HTML がテキストエリアで実行されます。つまり、すべての HTML コードの Textarea 内の場所が変わってしまったのですが、どうすれば修正できますか?

私のウェブサイトに投稿を追加する前に、これをテキストエリアに入れました:

<pre><div>toto</div></pre>

私のデータベースの投稿(すべて問題ありません):

<pre><div>toto</div></pre>

投稿を編集しようとすると、コンテンツが CKEditor textarea で再フォーマットされます。

<pre>&nbsp;</pre><div>toto</div>

主な問題はCKEditorだと思います.おそらく彼は私のHTMLコードをすべて再フォーマットまたはエンコードしています.何が起こっているのかわかりません...

編集1:

CKEditorの設定ファイル

CKEDITOR.editorConfig = function( config ) {
    config.toolbarGroups = [
        { name: 'clipboard',   groups: [ 'clipboard', 'undo' ] },
        { name: 'editing',     groups: [ 'find', 'selection', 'spellchecker' ] },
        { name: 'links' },
        { name: 'insert' },
        { name: 'forms' },
        { name: 'tools' },
        { name: 'document',    groups: [ 'mode', 'document', 'doctools' ] },
        { name: 'others' },
        '/',
        { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
        { name: 'paragraph',   groups: [ 'list', 'indent', 'blocks', 'align' ] },
        { name: 'styles' },
        { name: 'colors' },
        { name: 'about' },
        { name: 'document', groups: [ 'mode'] }, // shows the source button
        { name: 'pbckcode' }
    ];

    config.extraPlugins = 'pbckcode';

    config.removeButtons = 'Underline,Subscript,Superscript';
};

私の追加投稿ビュー:

extends admin_layout
block content
    div.container
        h1 Wellcome to administration pannel
        div.space20
        div.block.first
            h2 Add post
            div.wrap
                form(action="/posts/add", method="post").admin
                        textarea(class="ckeditor", id="ckeditorFilter", placeholder="Content...", name="content", rows="15")
                        br
                    input(type="submit", value="Save")
    script(src="/admin/js/ckeditor/ckeditor.js")
    script
        CKEDITOR.replace('content',{
            toolbar: 'Basic',
            uiColor: '#0091BD'
        });

私の編集投稿ビュー:

extends admin_layout
block content
    div.container
        h1 Wellcome to administration pannel
        div.space20
        div.block.first
            h2 Edit post
            div.wrap
                - each p in post
                    p= p.content
                    form(action="/posts/add", method="post").admin
                            textarea(class="ckeditor", id="ckeditorFilter", placeholder="Your content...", name="content", rows="15", required)!= p.content
                            br
                        input(type="submit", value="Edit")
    script(src="/admin/js/ckeditor/ckeditor.js")
    script
        CKEDITOR.replace('content',{
            toolbar: 'Basic',
            uiColor: '#0091BD'
        });
4

1 に答える 1