我在我的tinyMCE編輯器中使用了自定義的menubutton,它使用頁面上其他位置的特定HTML元素作爲菜單項。我使用jQuery選擇來獲得元素的列表,然後添加每一個作爲菜單項:TinyMCE中的動態菜單按鈕項
c.onRenderMenu.add(function(c,m) {
m.add({ title: 'Pick One:', 'class': 'mceMenuItemTitle' }).setDisabled(1);
$('span[data-menuitem]').each(function() {
var val = $(this).html();
m.add({
title: $(this).attr("data-menuitem"),
onclick: function() { tinyMCE.activeEditor.execCommand('mceInsertContent', false, val) }
});
});
});
我的問題是,一旦按鈕時,第一個按下菜單第一次呈現這只是發生。當前頁面上的HTML元素會偶爾根據用戶的點擊和一些AJAX而改變,所以我需要在每次菜單渲染時運行這個選擇器代碼,以確保菜單完全是最新的。那可能嗎?
失敗了,是否有可能動態更新從我的AJAX調用的頁面結尾處的控件?我不確定如何訪問菜單項並更新它。使用tinyMCE.activeEditor.controlManager
...的東西?
謝謝!