Redactor

时间:2018-04-02 08:27:32

标签: javascript extjs

我不确定“方法”这个词是否属于Redactor中的函数或类。但是我试图通过$('#id').redactor('destroy')来破坏编辑器。该代码在创建/实例化redactor时起作用,但是在我销毁它之后给出错误没有这样的方法“销毁”Redactor (因为它已经被销毁)。在某种程度上,我想在销毁之前检查方法是否存在;就像来自javascript的那个来检查函数是否像typeof $(#id).redactor === 'function'一样存在,我也尝试使用$(#id).hasClass($(#id).redactor('destroy')),这仍然会导致错误。

所以我不确定如何检查方法是否存在,所以我只会在创建/实例化redactor时销毁它。

为了Jadhav先生:

这是我的Instructions.js

Ext.define('myNamespace', {
    extend: 'Ext.container.Container',
    alias : 'widget.instructionstab',

    requires:[
        'myCommonFunctions',
    ],
    margin: '5 5 5 5',
    layout: {
        type: 'vbox',
        align: 'stretch'
    },
    initComponent: function() {
        var me = this,
            cfg = cfg || {};

        Ext.applyIf(me, {
            items: [
                {
                    xtype: 'textareafield',
                    flex: 1,
                    itemId: 'txtHeaderComment',
                    fieldLabel: 'Header Comment',
                    enableDrillDown: true,
                },
                {
                    xtype: 'textareafield',
                    flex: 1,
                    itemId: 'txtFooterComment',
                    fieldLabel: 'Footer Comment',
                    enableDrillDown: true
                }
            ]
        }, cfg);

        me.callParent(arguments);
    }

});

myCommonFunctions:

createRadEditor: function(el) {
        var me = this;

        var fn = function () {
            $('#' + el.inputId).redactor({
                buttons: ['bold', 'italic', 'underline', 'deleted', 'alignleft', 'aligncenter', 'alignright', 'unorderedlist', 'orderedlist', 'outdent', 'indent', 'image', 'video', 'table', 'link', 'horizontalrule', 'html', 'fullscreenwindow'],
                plugins: ['fontcolor', 'fontfamily', 'fullscreenwindow'],
                clipboardUpload: true,
                clipboardUploadUrl: './somelink/setimage',
                blurCallback: function(e){
                    console.log("ASDF"); // i'm still trying out something
                }
            });

            $('#'+ el.inputId).redactor('setTextEditorHeight');
            $('#'+ el.inputId).attr("id",el.config.itemId);
        };
        var task = Ext.create('Ext.util.DelayedTask', fn);
        task.delay(500);
    },

MyView的:

{
    xtype: 'panel',
    itemId: 'pnlInstructions',
    layout: 'fit',
    title: 'Instructions',
    items: [
        {
            xtype: 'instructionstab'
        }
    ]
},

我在这里使用https://imperavi.com/redactor/docs/的一些文档来了解编辑器的属性。

1 个答案:

答案 0 :(得分:1)

如果你想破坏redactor那么你应该使用:

AllowAccessTokensViaBrowser