2016-07-07 37 views
1

我在獲取現有實例時遇到問題。CKEditor:無法獲取CKEditor的現有實例

文本區:

{{ textarea name=ec.ec_id value=ec.ecl_body placeholder=ec.ecl_en_body class="form-control" }} 

的CKEditor:

function createEditor(name) 
{ 
    CKEDITOR.replace(name, { 
     //uiColor: '#379e15', 
     resize_dir: 'both', 
     resize_maxWidth: '800', 
     toolbarGroups: [{name: 'basicstyles', groups: ['basicstyles', 'cleanup']}, 
      {name: 'paragraph', groups: ['list', 'indent', 'blocks', 'align', 'bidi']}, 
      {name: 'links'}, {name: 'editing', groups: ['find', 'selection', 'spellchecker']}] 

    }); 
} 

createEditor(email.ec_id); //Its working 

獲取數據:

var data = CKEDITOR.instances[email.ec_id]; 

錯誤: 數據不確定

+1

你確定'email.ec_id'與你給'textarea'的'ec.ec_id'屬性相匹配嗎? –

+0

是的,它是一個對象 –

+0

@Rory我喜歡CKEditor不返回實例。 –

回答

0

固定,我花了很多時間在這個,並最終修復它。

CKEditor初始化名稱或ID屬性。

對於實施例1:

<textarea id="msg_body" name="msg_body"></textarea> 

CKEDITOR.replace('msg_body', {}); //Working 

var instance = CKEDITOR.instances['msg_body']; //return instance 

對於實施例2:

<textarea id="diffrent_id" name="msg_body"></textarea> 

CKEDITOR.replace('msg_body', {}); //Working and ckeditor init successfully 

var instance = CKEDITOR.instances['msg_body']; //Not Working return undefined. 

對於實施例3:

<textarea id="msg_body" name="diffrent_class"></textarea> 

CKEDITOR.replace('msg_body', {}); //Working 

var instance = CKEDITOR.instances['msg_body']; //return instance 

SO在emberjs如果我們不指定id字段然後餘燼自動分配一個燼ID這是因爲我無法得到該實例。