2013-05-07 83 views
2

我有一個函數,當您單擊一個按鈕時, TinyMCE中的選定文本被封裝在span標記中。TinyMCE不在標籤中添加onClick事件

這樣做是這樣的:
          var apolo = '<span id=\"' + tag + '_' + key + '\" class=\"apolo' + type + '\" onClick=\"myFunction(this.id)\">' + sel + '</span>';
          tinyMCE.activeEditor.execCommand('mceInsertContent', false, apolo);

預期的結果是:
          <span id="org_2" class="apoloP" onClick="myFunction(this.id);">SELECTED TEXT</span>
但是,我得到的結果是:
          <span id="org_2" class="apoloP">SELECTED TEXT</span>

調用我的函數onclick事件,被簡單地忽略。

版本3.5.8工作,但我不得不搬到版本4.0b2由於沒有人能解決另一個bug(How to stop TinyMCE to delete the span tags?)。
最後,我得到的只是一個錯誤到另一個。

有誰知道我如何爲TinyMCE不刪除我的文本?

回答

2

檢查設置valid_elements並仔細查看是否將onclick添加爲有效屬性。我看起來像這個屬性被剝離出來,因爲它沒有註冊爲有效。

0

什麼可以幫助的人誰需要提供關於這個主題的更多信息:

我面對完全一樣的問題,並與一些其他問題/#2我發現,我不得不改變配置/ tinyMceConfig答案。配置來自:

<validElements> 
<![CDATA[+a[id....-span[class|align|style],...]]> 
</validElements> 

<validElements> 
<![CDATA[+a[id....-span[class|align|style|title|onclick],...]]> 
</validElements> 

但是,即使該屬性是在所示編輯器 - 每次頁面被保存/發佈,不知何故titleonclick屬性被刪除。

一把umbraco/JS/umbraco.controller.js以下行

var extendedValidElements = "@[id|class|style],-div[id|dir|class|align|style],ins[datetime|cite],-ul[class|style],-li[class|style],span[id|class|style]"; 

似乎除去一切,但定義的屬性。 當我把它改成

var extendedValidElements = "@[id|class|style],-div[id|dir|class|align|style],ins[datetime|cite],-ul[class|style],-li[class|style],span[id|class|style|title|onclick]"; 

屬性現在保存/發佈後仍然存在。 我希望這可能可以幫助某人。