2016-05-16 7 views
2

私のウィジェットのテンプレートに入れたリンクにCKEditorをhref="javascript:void(0)"のままにする方法はありません。私はそれを保存すると、CKEDITOR.instances.*.getData()を呼び出して、それはhref="javascript void(0)"を返します。CKEditorウィジェット内でhref = "javascript:void(0)"を許可する方法

私はそれがこの固定しなければならないことを示しているが、これは動作しません this pageを読んだことがある...

を私はconfig.jsの中config.allowedContent = true; & config.linkJavaScriptLinksAllowed = true;を設定しようとしているが、それらの両方が、何もしていないように見えます

。何か案は?

簡略化されたplugin.js以下は興味深い部分です。これにより、リンク内のhref属性が許可されますが、まだ:が削除されます。

template: 
    '<div class="container">' + 
    '<a href="javascript:void(0)">' + 
     '<span class="label">Label</span>' + 
    '</a>' + 
    '</div>', 

allowedContent: 
    'a[href]; div(*); span(*);', 

editables: { 
    Label: { 
    selector: '.label', 
    allowedContent: '' 
    } 
} 

のCKEditorバージョン:4.5.9 ブラウザ:クローム

答えて

1

プラグインのダイアログを経由してリンクを挿入するとき、それはのみ動作しますので、変更履歴で発見したbug fixのみリンク]ダイアログのために実装されました。

ウィジェットテンプレートの一部としてhref="javascript:void(0)のリンクを使用しているため、あなたのケースは異なります。ない正確に自分のテンプレート構造が何であるかを確認し、どのように正確にあなたがウィジェットを作成しているが、それを作成するときには、ウィジェットのこの編集可能な一部の内部で許可されている要素を定義するためにeditablesプロパティを使用することができますので、

editables: { 
    content: { 
     selector: '.widget-content', 
     allowedContent: 'p a[href]' 
    } 
} 

allowedContentを使用して、ウィジェットのこの部分に許可されたコンテンツを定義します。この場合、pタグとaタグはhref属性です。このような構成では、<a href="javascript:void(0)">Link</a>を正しく挿入する必要があります。

許容コンテンツルールの詳細については、in the documentationをご覧ください。

+0

投稿ありがとうございます!しかし、それは動作しません、問題はhref属性を取得していないが、hrefのjavascriptを取得していた。私はそれを明確にするためにいくつかのコードで私の答えを更新しました – Bastiaan

+0

@Bastiaanは説明のためにありがとう。どのブラウザを使っているのか教えていただけますか?上の設定の 'javascript:void(0)'はChromeで正常に動作しているようです。 – f1ames

+0

私はChromeを使っています...(あなたがテストして動作していますか?) – Bastiaan

関連する問題