首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • Ext奇怪的问题。获取组件id
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qixing830
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-11-18 14:42:35 楼主
    能不能帮我看下我想获取组件id但是还是不能

    Ext.namespace("Neo");
    Ext.namespace("Neo.frontdesk");
    var clock = new Ext.Toolbar.TextItem('');
    Neo.frontdesk.RoomView = Ext.extend(Ext.Panel,{
    constructor:function(_cfg){       
    if(_cfg == null)
    _cfg = {} ;
    Ext.apply(this , _cfg) ;
    Neo.frontdesk.CheckInForm.superclass.constructor.call(this,{
        region:'center'
            ,title:'房间状态'
            ,autoscroll:true
            ,tools:[
        {
      id:'refresh'
      ,scope:this
      ,handler: function(event, toolEl, panel){
    panel.roomDataView.store.reload();
    Ext.ux.Toast.msg('提示','房态已刷新');
      }
      }
    ]
    ,tbar:[{
                        text: '过滤:'
                        },{
                        xtype: 'textfield',
                        id: 'filter',
                        selectOnFocus: true,
                        width: 100,
                        listeners: {
                        'render': {fn:function(){
        Ext.getCmp('filter').getEl().on('keyup', function(){
        this.filter();
        }, this, {buffer:500});
                        }, scope:this}
                        }
                        }, ' ', '-', {
                        text: '过滤条件:'
                        }, {
                        id: 'filterSelect',
                        xtype: 'combo',
            typeAhead: true,
            triggerAction: 'all',
            width: 100,
            editable: false,
            mode: 'local',
            displayField: 'desc',
            valueField: 'name',
            lazyInit: false,
            value: '房间号',
            store: new Ext.data.SimpleStore({
            fields: ['name', 'desc'],
            data : [['rmId', '房间号'],['rmCatalog', '房间类型']]
        }),
        listeners: {
    //'select': {fn:this.sortImages, scope:this}
        }
        }
    ,'->'
    ,{
    text:'房间过滤'
    ,iconCls:'icon-roomfilter'
    ,menu:{
    items:[
    {
    text:'类型'
    ,iconCls:'icon-roomcatalog'
    ,menu:{
    items:[
    {
    text:'标准间'
    ,checked:true
    ,id:'filtStandRm'
    }
    ,{
    text:'单人间'
    ,checked:true
    ,id:'filtSingleRm'
    }
    ,{
    text:'三人间'
    ,checked:true
    ,id:'filtThreeRm'
    }
    ,{
    text:'豪华套间'
    ,checked:true
    ,id:'filtDeluxRm'
    }
    ]
    }
    }
    ,{
    text:'楼层'
    ,iconCls:'icon-roomfloor'
    ,menu:{
    items:[
    {
    text:'一楼'
    ,checked:true
    ,id:'filtFirst'
    ,handler:function(){
      alert("a")
    }
    }
    ,{
    text:'二楼'
    ,checked:true
    ,id:'filtSecond'
    }
    ,{
    text:'三楼'
    ,checked:true
    ,id:'filtThird'
    }
    ,{
    text:'四楼'
    ,checked:true
    ,id:'filtFourth'
    }
    ]
    }
    }
    ]
    }
    }
    ]
    ,items:[
    {
    xtype:'roomdataview'
    ,id:'roomDataView'
    }
    ]  
    });
    this.filtStandRm=Ext.get('refresh');
    alert(this.filtStandRm)

    }

    });
    Ext.reg('roomview',Neo.frontdesk.RoomView);
    50  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qixing830
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-18 14:45:001楼 得分:0
    下面红色的部分用Ext.getCmp也不行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • victorn
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-18 16:35:112楼 得分:0
    你的component 都还没 rendered , 在afterRender中使用即可:
    JScript code
    afterRender : function(){ Lokomotive.CMSUpdateSitePanel.superclass.afterRender.call(this); this.filtStandRm=Ext.get('refresh'); }// eo function afterRender
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Li_Yundong
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-18 16:46:443楼 得分:0
    你用Ext.get('refresh').dom试试。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • LCKKING
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-18 19:29:414楼 得分:0
    你在调用这句话的时候,组件都还没生成出来,你应该在Ext.onReady之内,或者之后调用
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qixing830
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-19 10:45:395楼 得分:0
    但是写在afterrender后也不能获取说为空或不是对象。真是奇怪。然后我在里面多加了个button空间比如

    buttons:[
    {
    id:'checkinBtn'
    ,disabled:true
    ,text:'登记'
    ,iconCls:'icon-checkin'
    }
    ,{
    id:'checkoutBtn'
    ,disabled:true
    ,text:'结账'
    ,iconCls:'icon-checkout'
    }
    ,{
    id:'checkinResetBtn'
    ,disabled:true
    ,text:'重置'
    ,iconCls:'icon-redo'
    }
    ]
    然后Ext.getCmp('checkBtn')的话可以获取到的。为什么会这样呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • victorn
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-19 11:07:576楼 得分:0
    不好说是什么原因,还是对EXTJS的执行机制不了解...
    你检查在写法上有什么区别
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qintao1203
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-20 11:13:027楼 得分:0
    有些根本都不用extend就可以写的,为什么非要搞个extend呢

    你出的问题应该是:js scope作用域的问题!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • softfire007
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-20 11:51:128楼 得分:0
    或许是extend有问题吧


    ----------------------签名区-----------------------
    欢迎访问Ext中文社区,Ext资料下载,学习ext
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved