Древовидная панель ExtJS 4 с флажком - PullRequest
0 голосов
/ 14 июля 2011

Мы используем древовидную панель с флажком в нашем приложении. Похоже:

var treepanel = {
id: 'tree',
xtype: 'treepanel',
store: layerStore,
rootVisible: false,
прослушиватели: {
checkchange: function (node, check) {
if (node.get ('id') == 'teacher'){
alert ('вы выбрали узел учителя');
} else if (node.get ('id') == 'student') {alert ('вы выбрали узел ученика');}
}
}
};

Код LayerStore:

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

});

Теперь я получаюсообщение о предупреждении, когда мы проверяем конкретный флажок. Моя проблема в том, что если мы снимаем флажок, он должен отображать предупреждение, как будто вы не выбрали определенный слой. Пожалуйста, помогите мне.

1 Ответ

1 голос
/ 14 июля 2011

Я прошу, вы должны изменить свой обработчик 'checkchange' на это:

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'); }
}
...