2016-01-16 79 views
1
editor.insertContent("<a href=\"#\" ng-click=\"signUp()\"> sign up </a>"); 

這是代碼行,我簡單的插入TinyMCE編輯器。 它工作但有一些問題。 與此問題是,它消除納克單擊=從像「註冊()」。換句話說,這產生以下內容TinyMCE刪除ng-click事件Angularjs

<a href="#"> sign up </a> 

這一翻譯的

<a href="#" ng-click="signUp()"> sign up </a> 

我會感謝充分,如果一些幫助我在這種情況下。我只是想在正確的方法來創建TinyMCE的插入只是上面的代碼行一個小插件

+2

讀了關於屬性和消毒的關卡編輯器的配置選項。您應該能夠添加到白名單specifc屬性或設置配置爲允許所有屬性 – charlietfl

+0

大尊敬 –

+0

以下TinyMCE的alloweed我做到這一點。 extended_valid_elements –

回答

0

您需要設置NG單擊標籤作爲有效TinyMCE的屬性。試試這個設置:

// The valid_elements option defines which elements will remain in the edited text when the editor saves. 
valid_elements: "@[id|class|title|style]," + 
"a[name|href|target|title|alt|ng-click]," + 
"#p,blockquote,-ol,-ul,-li,br,img[src|height|width],-sub,-sup,-b,-i,-u," + 
"-span,hr", 
0

我也想分享我的解決方案。可能不適合所有用例,因爲它會讓您容易受到XSS的攻擊。對於我的封閉環境來說,它很好。

我也想允許使用任何其他角度的屬性,所以把它們列出所有不是很可行。

我簡單地加入下列:

valid_elements: '*[*]' 

這允許使用具有任何屬性的任何元件。