3

私は CKEditor を使い始めたばかりで (2 日前に使い始めました)、エディターからタグを削除するなどの構成でまだ戦っています。

たとえば、ユーザーがソース モードで次のように入力した場合:

<script type="text/javascript">alert('hello');</script>

削除したいと思います。

ドキュメントを見ると、これは HTML フィルターを使用して実行できることがわかりました。そのように定義しましたが、機能しません。

var editor = ev.editor;
var dataProcessor = editor.dataProcessor;
var htmlFilter = dataProcessor && dataProcessor.htmlFilter;
htmlFilter.addRules(
    {
        elements :
          {
             script : function(element)
                {
                   alert('Found script :' + element.name);
                   element.remove();
                },
             img : function( element )
                {
                   alert('Found script :' + element.name);
                   if ( !element.attributes.alt )
                       element.attributes.alt = 'Cookingfactory';
                   }
                 }
             });

img 部分はうまく機能していますが、スクリプト部分は機能していません。私は何かを逃したと思います。スクリプトの警告メッセージも表示されません。

どんな助けでも大歓迎です:o)

4

3 に答える 3

1

CKEditor 4.1 以降を使用している場合は、高度なコンテンツ フィルターを使用して必要なコンテンツを許可できます。

CKEditor 4.4 以降を使用している場合は、もっと簡単な方法があります。許可されていないコンテンツを使用して、気に入らないコンテンツをフィルタリングできます。

 config.disallowedContent = 'script';
于 2014-08-21T10:07:50.093 に答える