Ext.getCmp()为空或不是对象
我想在下拉框自动填充原有数据,不过数据库里存的是user_id,而要显示的是user_name。所以,我只能先从表里把user_id取出来,再去user表里找user_n...
我想在下拉框自动填充原有数据,不过数据库里存的是user_id,而要显示的是user_name。所以,我只能先从表里把user_id取出来,再去user表里找user_name.但是我一发请求页面就报错:Ext.getCmp()为空或不是对象。如果我改成文本框的形式直接显示user_id是有值的,帮我看一下这段代码有什么问题:
xtype:'combo',
fieldLabel:'操作人',
allowBlank:false,
blankText:'操作者姓名不能为空',
name:'userId',
//id:'user2',
store:new Ext.data.Store({
autoLoad:false,
reader:new Ext.data.JsonReader({
totalRecords:"totalCount",
root:"list",
id:"userId"
},
Ext.data.Record.create([
{name:'deptId'},
{name:'userName'},
{name:'userEmail'}
])
),
proxy:new Ext.data.HttpProxy({
url:'getUserById.action?userId='+Ext.getCmp('userId').getValue()
}/* ,{
url:'showuser.action?deptId='+Ext.getCmp('dept2').getValue()
} */)
}),
allQuery:'alltask',
triggerAction:'all',
editable:false,
loadingText:'正在加载员工列表',
displayField:'userName',
valueField:'userId',
emptyText:'请输入操作者姓名',
width:190,
mode:'remote' 展开
xtype:'combo',
fieldLabel:'操作人',
allowBlank:false,
blankText:'操作者姓名不能为空',
name:'userId',
//id:'user2',
store:new Ext.data.Store({
autoLoad:false,
reader:new Ext.data.JsonReader({
totalRecords:"totalCount",
root:"list",
id:"userId"
},
Ext.data.Record.create([
{name:'deptId'},
{name:'userName'},
{name:'userEmail'}
])
),
proxy:new Ext.data.HttpProxy({
url:'getUserById.action?userId='+Ext.getCmp('userId').getValue()
}/* ,{
url:'showuser.action?deptId='+Ext.getCmp('dept2').getValue()
} */)
}),
allQuery:'alltask',
triggerAction:'all',
editable:false,
loadingText:'正在加载员工列表',
displayField:'userName',
valueField:'userId',
emptyText:'请输入操作者姓名',
width:190,
mode:'remote' 展开
展开全部
Ext.getCmp("ID") 控件定义的时候必须加ID才能取到
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
getCmp方法用来获得一个Ext组件,也就是一个已经在页面中初始化了的Component或其子类的对象,getCmp方法中只有一个参数,也就是组件的id。你有组件ID是userId 或者dept2的吗?
追问
我在组件中设置了id:'user2',也是会报这个错误;dept2是另一个组件的id,使用时错误提示一样
追答
url:'getUserById.action?userId='+Ext.getCmp('userId'). 'userId'?????和user2有关系?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询