ext的itemselector在窗口中,就第一次打开窗口时双击管用,第二次及以后打开窗口时双击不管用,求解决方法!
以下为代码:
Js代码 收藏代码
//用户角色关系表单
var userRoleForm = new Ext.form.FormPanel({
width:500,
bodyStyle: 'padding:10px;',
items:[{
id:'userRoleForm',
xtype:"itemselector",
name:"userRoleForm",
hideLabel:true,
dataFields:["id", "name"],
toStore:userRoleDSOfRight,
msWidth:200,
msHeight:300,
valueField:"id",
displayField:"name",
imagePath:ctx + "/commons/lib/ExtJS/images/",
toLegend:"已选角色",
fromLegend:"角色",
fromStore:userRoleDSOfLeft,
fromTBar:[{
xtype:'textfield',
name:'searchRS',
id:'searchUserRole'
},{
text:'查询',
handler:function(){
var a = userRoleDSOfLeft;
userRoleDSOfLeft.filter('name',Ext.get('searchUserRole').dom.value,true,false);
}
}],
toTBar:[{
text:"清空",
handler:function(){
var i=userRoleForm.getForm().findField("userRoleForm");
i.reset.call(i);
}
}]
}]
});
//弹出窗口
var userRoleWin = new Ext.Window({
title : '分配用户角色',
autoScroll : true,
width : 500,
height : 420,
closeAction : 'hide',
layout : 'fit',
modal : true,
draggable:false,//不可拖拽
resizable:false,//设置窗口大小不可改变
closable:false,
buttonAlign:'center',
items : userRoleForm,
buttons: [{
text: '保存',
handler: function(){
if(userRoleForm.getForm().isValid()){
userRoleForm.getForm().submit({
url:"../user/saveUserRole",
method:"POST",
params:{userId:userId},
success: function(form, action){
var i=userRoleForm.getForm().findField("userRoleForm");
i.reset.call(i);
userRoleWin.destroy();
userRoleForm.destroy();
Ext.Msg.alert("提示", action.result.errors);
},
failure:function(form, action) {
Ext.Msg.alert("错误", action.result.errors);
}
});
}
}},{
text:'关闭',
handler:function(){
var i=userRoleForm.getForm().findField("userRoleForm");
i.reset.call(i);
userRoleWin.destroy();
Ext.getCmp("userRoleForm").destroy();
}
}]
});
userRoleForm 定义了id:'userRoleForm',第二次打开的时候会发现id已经被使用过了,所以不会出现,去掉id的定义即可。不谢。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。