修改前一个下拉框的数据,使后一个下拉框中的内容发生改变,就是级联下拉。

可以在前一个下拉框的onUpdateValue事件中给后一个下拉框的option关联的data设置filter,然后在后一个下拉框的onShowOption事件中调用data的刷新就可以使内容发生变化
当然在修改了前一个下拉的选择数据后,后一个下拉框的数据也要清空,同样在前一个下拉框的onUpdateValue事件操作,如下:
第一个下拉框的定义


<div class="x-gridSelect" component="$UI/system/components/justep/gridSelect/gridSelect" xid="gridSelect6" bind-ref="$model.bizData2.ref(&quot;fDQID&quot;)" bind-labelRef="$model.bizData2.ref(&quot;fDQ&quot;)" onUpdateValue="gridSelect6UpdateValue"> 
<option xid="option6" data="RegionData" value="DEMO_Region" label="fName"/>
              </div>

gridselect1
第一个下拉框onUpdateValue事件的代码

	Model.prototype.gridSelect6UpdateValue = function(event) {
		var data = this.comp("bizData2");
		var RegionID = data.getValue("fDQID");
		var ProvinceData = this.comp("ProvinceData")
		ProvinceData.setFilter("filter1", "DEMO_Province.fRegionID=" + RegionID);
		data.setValue("fSID", "");
		data.setValue("fS", "");
		this.isReload = true;
	};

第二个下拉框的定义


<div class="x-gridSelect" component="$UI/system/components/justep/gridSelect/gridSelect" xid="gridSelect5" bind-ref="$model.bizData2.ref(&quot;fSID&quot;)" bind-labelRef="$model.bizData2.ref(&quot;fS&quot;)" onShowOption="gridSelect5ShowOption"> 
<option xid="option5" data="ProvinceData" value="DEMO_Province" label="fName" autoLoad="false"/>
              </div>

gridselect2
第二个下拉框onShowOption事件的代码

	Model.prototype.gridSelect5ShowOption = function(event) {
		if (this.isReload) {
			this.comp('ProvinceData').refreshData();
			this.isReload = false;
		}
	};

js中用的是this.isReload是在model中定义的实例变量

	var Model = function() {
		this.callParent();
		var isReload = false;
	};