2012-12-15 28 views
2

爲了避免XSS,我正在處理輸入。如果我允許某些屬性,如風格,我uncertain and was unable to find a definite answer,如果允許style sanitize會防止xss或不。 (答案中給出的例子不允許通過清理並且不會導致XSS)TinyMCE - 將所有格式和樣式輸出製作爲類

因此,例如,如果用戶選擇從左到右的文本方向或從右到左的文本方向按鈕,則輸出將會是

<span style="direction:ltr"> user text </span> 

我想避免這種情況,不知何故使得它像這樣

<span class="LTR"> user text </span> 

,我會在不同的CSS後來改變LTR類。

我試着改變tinymce.yml,但我能做的最好的是打破窗體,而不是使它工作。

有人可以給我一個例子如何做到這一點,所以我可以做到這一點的所有格式和風格? (或者是它更好地使用nokogiri或類同解析它,改變它自己?)

+0

+1好問題 – Thariama

回答

1

我會做類似下面

var editor = tinymce.get('your_editor_id'); 
$(ed.getBody()).find('[style=direction:ltr]').attr('style','').addClass('LTR'); 

您可以一起使用TinyMCE的setup configurationparameter與事件上你想執行此操作:

+0

我最終做了這個在紅寶石... tinymce配置不清楚如何做到這一點 –