ExtJS 4 treepanel与复选框问题 [英] ExtJS 4 treepanel with checkbox issue

查看:211
本文介绍了ExtJS 4 treepanel与复选框问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在使用treepanel与我们的应用程序中的复选框。看起来像:

We are using treepanel with check box in our application.It seems like:


var treepanel = {

id:'tree',

xtype:'treepanel',

store:layerStore,

rootVisible:false,

listeners :{

checkchange:function(node,check){

if(node.get('id')=='teacher'){

alert (你选择了教师节点);

} else if(node.get('id')=='student'){alert('你选择了学生节点'); }

}

}

};

var treepanel = {
id : 'tree',
xtype : 'treepanel',
store : layerStore,
rootVisible : false,
listeners : {
checkchange : function(node,check){
if(node.get('id') == 'teacher'){
alert('you have selected teacher node');
}else if(node.get('id') == 'student'){ alert('you have selected student node'); }
}
}
};

LayerStore代码:

LayerStore code:

var layerStore = Ext.create('Ext.data.TreeStore',{
root : {
children : [
{
text : 'teacher layer',
id : 'teacher',
checked : false
},{
text : 'Student layer',
id : 'student',
checked : false
}]
}

});

现在,当我们检查特定的复选框时,我收到警报消息。我的问题是,如果我们取消选中复选框,那么它必须显示警报,就像你已经选择了一个特定的层。请帮助我。

Now,i am getting the alert message when we check on the particular checkbox.My problem is that if we uncheck the checkbox then it has to display the alert like you has unselected a particular layer.Please help me.

推荐答案

我想你必须将'checkchange'处理程序改为:

I quess You have to change your 'checkchange' handler to this:

checkchange : function(node,check){
  var s = (!check && 'un' || '' ) + 'selected';

  if(node.get('id') == 'teacher'){
    alert('you have '+s+' teacher node');
  }else if(node.get('id') == 'student'){ alert('you have '+s+' student node'); }
}

这篇关于ExtJS 4 treepanel与复选框问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆