2011-05-05 18 views
0

我有一個div,點擊時使用可jitableitable jQuery插件做某種HTML替換,將div更改爲包含textarea的表單。如何將javascript應用於由javascript創建的textarea?

我想將tinyMCE JS附加到我網站上的所有textareas。我遇到的問題是textarea是在tinymce應用於textareas之後動態創建的。

任何人都可以想到如何附加一些非常簡單的wysiyyg文本編輯器(最好的tinymce)一旦它由jEditable創建的textarea控件?

我在PHP應用程序中使用最新的jQuery庫。

乾杯,

比利

+2

閱讀http://api.jquery.com/live/上的'.live()'...肯定幫助你 – diEcho 2011-05-05 12:33:45

+2

看看這裏:http://blog.mirthlab.com/2008/11/13/dynamic-adding-and-removing-tinymce-instances-to-a-page/ – 2011-05-05 12:34:51

+0

委託是基於父子行爲 – diEcho 2011-05-05 12:37:48

回答

0

你想要什麼,似乎不可能在第一。原因如下:

Tinymce在初始化時創建一個內容可編輯的iframe(不是textarea!),它將用於編輯html內容。有一些編輯器動作(即保存)將把Iframes內容寫回到最初的html元素(可以是div,textarea或其他任何東西)。

我遇到的問題是textarea是在tinymce>應用於textareas之後動態創建的。

但是,您可以隨時初始化tinymce(您需要使用模式'模式') - 甚至在動態創建textarea之後。

0

使用TinyMCE jQuery Plugin,我想你可以這樣做:

$(function() { 
    $('div.editable_textarea') 
     .editable({ ... }) 
     .click(function() { 
      $(this).find('textarea').tinymce(); 
     }); 
}); 

我的基於選擇關閉jEditable live demo

+0

謝謝Mike,唯一的問題是tinmce修改似乎沒有將內容傳回給textarea的。所以,當jeditable發佈後,它的值是空的:(我不知道爲什麼,但我認爲在它之前,tinymce需要將內容傳遞迴textarea – iamjonesy 2011-05-09 12:03:11