2017-10-12 12 views
1
내가 ckeditor를 사용하고

을 허용. 나는 요소를 실행하여 기본적으로 허용 된 검사 :Ckeditor는 IMG 요소

ckEditor.on('instanceReady', function() { 
     console.log(JSON.stringify(ckEditor.filter.allowedContent, null, '\t'));  
    }); 

이것은 img 요소가합니다 (IMG 버튼 내 도구 모음에 표시되지 않는다는 사실에도 불구하고) 허용되는지 보여줍니다.

사용자가 img 요소와 코드를 제출 할 수 있도록 내가 원하는하지 않기 때문에

, 나는 완전히이 허용 싶었다. 나는 ckEditor.filter.allowedContent 명령으로 허용 된 콘텐츠를 표시 할 때

CKEDITOR.replace("comment", { 
     disallowedContent: 'img' 
    }); 

img 요소가 여전히로 표시됩니다 : 편집기를 초기화 할 때 또한 시도

config.disallowedContent = 'img'; 

과 : 나는 함께 config.js 파일을 허용하지 시도 허용.

내가 뭘 잘못하고 있니? 누군가가 편집기에 코드를 붙여 넣는 경우에는 img을 거부해야합니다. ...

(서버 측 유효성도 검사하고 있지만 서버 측과 클라이언트 측이 일치하는 것이 이상적입니다. 금지하십시오 img).

덕분에 이미지 코드 아래 사용하십시오 허용하기 위해

+0

: HTTPS : //docs.ckeditor https://jsfiddle.net/reoh7j74/214/이 문서는 가장 좋은 방법은 페이지를 정의하는 것이라고 주장한다. ! 당신은 어쩌면 ckeditor의 다른 버전이 필요 – HMR

+0

COM/ckeditor4/문서/#/가이드/dev_configuration는, 콘텐츠 필터가 4.1에 도입되었다 : https://docs.ckeditor.com/ckeditor4/docs/#!/guide/dev_advanced_content_filter – HMR

+0

안녕하세요, 4.7.3 버전을 사용하고 있습니다. 나는 당신의 바이올린을 실행하고 허용되는 것을 볼 때 : https://jsfiddle.net/bfyuL1cy/를,'img' 태그가 여전히 존재 나타납니다. 나는 당신의 코드를 정말로 이해하지 못한다. 왜 그냥'disallowedContent : 'img''를 (disablePlugin ... 코드가없는) replace 함수에 넘기는 것만으로 충분하지 않을까요? – theyuv

답변

0

는 :

CKEDITOR.replace('editor1', { 
    disallowedContent: 'img' 
}); 

CKEDITOR.instances.editor1.filter.disallowedContentCKEDITOR.instances.editor1.filter.allowedContent 두 개의 별도의 목록은 하나에 요소를 추가하는 것은 다른에서 제거하지 않습니다. 당신은 정의 (또는 편집자는 기본적으로 있다는 않습니다) allowedContent list에서 허용 된 요소의 목록과 disallowedContent list에서 허용되지 않는 요소의 목록을. 나중에는 이전 것보다 우선 순위가 높습니다. - https://docs.ckeditor.com/ckeditor4/docs/#!/guide/dev_disallowed_content. 이것이 이미지가 편집기에서 허용되지 않는 이유입니다. 당신은 대체 함수에 설정을 전달하는 경우 그것은 작동