ExtJS-Cannot read property 'childNodes' of null

在使用ExtJS开发grid表格时,其中有一列嵌入了combo组件;代码如下:


{
            xtype: 'gridcolumn',
            menuDisabled: true,
            sortable: false,
            align: 'center',
            dataIndex: 'goodsName',
            text: '物品名称',
            width: 100,
            editor: {
                xtype: 'combo',
                displayField: 'goodsName',
                valueField: 'id',
                hideTrigger: true,
                typeAhead: true,
                minChars: 1,
                store: {
                    xtype: 'store',
                    model: 'GoodsComboBoxModel',
                    proxy: {
                        type: 'ajax',
                        url: 'allGoodslistByName.action',
                        reader: {
                            type: 'json',
                            root: 'array',
                            totalProperty: 'total'
                        }
                    },
                    autoLoad: false
                },
                listeners: {
					'change': function(){...},
					'select': function(){...},
					'focus': function(){...}
						},
            renderer: function (value, metaData) {
                if (null != value && "" != value) {
                    metaData.tdAttr = 'data-qtip = ' + value.replace(/\s+/g, "");//Cannot read property 'childNodes' of null
                    metaData.style = 'white-space:normal;word-break:break-all;';
                }
                return value;
            }
        },


注意看renderer渲染的函数,因为定义的combo的valueFeild是id,所以在这个列当中record col值应该是一个数字,但是这里定义的是物品名称,应该显示id对应的物品名称;当然有的人会想为什么不讲valueField定义为goodsName,这样似乎更加简单;这里是因为有其他原因,所以要定义为ID,这里不讨论这个;问题就出在函数中:
metaData.tdAttr = 'data-qtip = ' + value.replace(/\s+/g, "");
这个主要是长字符串需要使用到这个; value就是qtip要显示的字符串;
将这段代码注释以后,再次测试无问题;
我这里是将这段代码改为其他代码来显示goodsName字符串;
网上也有说是因为record中字段值为null,想这种问题,网上的只能做参考,帮你排除;当行不通时还是需要打断点耐心去寻找到问题,这样才是解决问题的根本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值