【问题标题】:ExtJS 5 - Observable.dom is null IE 8 and IE 9ExtJS 5 - Observable.dom 为空 IE 8 和 IE 9
【发布时间】:2015-04-26 22:22:18
【问题描述】:

我有一个窗口,其中有一个表格。该窗口将在单击上传按钮时显示。

因为我必须支持多个文件上传并在网格中显示它们。每次添加新文件并将其引用添加到网格中时,我都会添加一个新文件按钮。

{
    xtype: 'form',
    itemId: 'form-itemid',
    width: 100,
    height:'100%',
    fieldId: 1,
    items: [{
        xtype: 'filefield',
        msgTarget: 'side',
        allowBlank: false,
        anchor: '100%',
        name: 'files',
        itemId: 'file-upload-'+me.fieldId+'-id',
        buttonOnly: true,
        buttonText: 'Add Files',
        listeners: {
            change: function(view, value, eOpts) {
                var form = this.up('form');
                form.onfileChange(view, value, eOpts);
            }
        }
        }],
        onfileChange: function(view, value, eOpts) {
            if (value != "") {
                var form = this;
                me.fieldId = App.util.AppConfig.getWinCount();

                var newUploadControl = {
                    xtype: 'filefield',
                    buttonOnly: true,
                    anchor: '100%',
                    buttonText: 'Add Files',
                    name: 'files',
                    itemId: 'file-upload-' + me.fieldId+'-id',
                    listeners: {
                        change: function(view, value, eOpts) {
                            form.onfileChange(view, value, eOpts);
                        }
                    }
              };
              view.hide();
              form.insert(0, newUploadControl);

              fileStore.getStore().add({
                  'filename': filename,
                  'fileId': me.fieldId - 1
              });

}

上传完成后,我将关闭窗口。

 window.close();

此时,在 IE9 和 IE8 中我得到了错误 Dom.js unsubscribe() 方法中的“无法获取属性 'id' 的值:对象为 null 或未定义”,用于具有目标 fileinput 的 Observable。

文件的以下行发生错误

 dom = observable.dom; // results in null
 id = dom.id; (Error here) // hence dom.id gives an error here

通过在浏览器中检查,我可以看到文件输入有它的 'id'。

不确定为什么 dom 对象为空。

【问题讨论】:

    标签: internet-explorer extjs internet-explorer-8 internet-explorer-9 extjs5


    【解决方案1】:

    此错误已在 5.1 中修复,我会考虑更新整个应用程序,因为 5.0.x 的错误修复不太可能很快出现。

    【讨论】:

    • 将应用程序升级到 5.0.1 会有风险吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-14
    • 1970-01-01
    • 1970-01-01
    • 2011-06-26
    • 2014-11-06
    • 1970-01-01
    • 2011-12-21
    相关资源
    最近更新 更多