下面是我写的二级联动 跟网上大神写的的不太一样
这里 sencha touch 有一个bug
如果selectfield的displayField这个属性是显示在页面上的值 如果两个选项的值是一样的 则无法监听中的change 事件 所以selectfield显示的值不能重名
下面我写了注释 希望能帮到大家
{
xtype: 'selectfield',id:'pigPenSelectField',
displayField:'name',
valueField:'id',
store:me.pigPenSelectStore,
listeners:{
change: function(selectbox,newValue,oldValue)
{
me.hogCoteSelectStore.removeAll(); //先清空数据源中的数据
me.hogCoteSelectStore.getProxy().setExtraParams({
id: newValue
}); //给数据源传参通过id查询数据第二个下拉列表数据
me.hogCoteSelectStore.load(); //加载数据源
if(me.hogCoteSelectStore.data.length==0){
me.hogCoteSelectStore.setData({"id":'',"feedNumber":"无",}) //判断 如果通过第一个下拉列表的选项id没有查询出数据 则给第二 个下拉列表附空值
}
}
},
label: '猪舍编号 : '
},{
xtype: 'selectfield',
id:'hogCoteSelectField',
displayField:'feedNumber',
valueField:'id',
store:me.hogCoteSelectStore,
label: '猪栏编号 : '
}