Search code examples
javascriptjqueryckeditor

CKEditor unwanted   characters


How can I disable CKEditor to get me every time  , when i don't want them? I'm using CKEditor with jQuery adapter.

I don't want to have any   tags.


Solution

  • After some research I might shed some light on this issue - unfortunately there is no out-of-the-box solution.

    In the CKEditor there are four ways a no-break space can occur (anybody know more?):

    1. Automatic filling of empty blocks. This can be disabled in the config:

      config.fillEmptyBlocks = false;
      
    2. Automatic insertion when pressing TAB-key. This can be disabled in the config:

      config.tabSpaces = 0;
      
    3. Converting double spaces to SPACE+NBSP. This is a browser behavior and will thus not be fixed by the CKEditor team. It could be fixed serverside or by a clientside javascript onunload. Maybe this php is a start:

      preg_replace('/\s \s/ig', ' ', $text);
      
    4. By copy & paste. If you paste a UTF-8 no-break space or double-spaces CKEditor will convert it automatically. The only solution I see here is doing a regex as above. config.forcePasteAsPlainText = true; doesn't help.

    Summary: To get rid of all no-break spaces you need to write an additional function that cleans user input.

    Comments and further suggestions are greatly appreciated! (I'm using ckeditor 3.6.4)