Extjs中ComboBox二级联动操作例子
本例子使用Extjs .NET版本,Coolite.Ext.Web控件,下面开始以实例操作:
首先建立test.aspx页面,加载控件
<%@ Register assembly="Coolite.Ext.Web" namespace="Coolite.Ext.Web" tagprefix="ext" %>
主要代码:
<form id="form1" runat="server">
<div>
<ext:ScriptManager ID="ScriptManager1" runat="server" />
<ext:Store runat="server" ID="ClassStore" > <!-- 一级数据源 -->
<Reader>
<ext:JsonReader ReaderID="class_id">
<Fields>
<ext:RecordField Name="class_id" Type="String" />
<ext:RecordField Name="class_name" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
<ext:Store runat="server" ID="TypeStore" > <!-- 动态二级数据源 -->
<Reader>
<ext:JsonReader ReaderID="type_id">
<Fields>
<ext:RecordField Name="type_id" Type="String" />
<ext:RecordField Name="type_name" Type="String" />
</Fields>
</ext:JsonReader>
</Reader>
<Listeners>
<Load Handler="#{type_ComboBox}.setValue(#{type_ComboBox}.store.getAt(0).get('type_id'));" />
</Listeners>
</ext:Store> <!------ 以下为数据展现 -->
<table cellpadding="0" cellspacing="0">
<tr>
<td>
<ext:ComboBox ID="class_box" runat="server"
DisplayField="class_name"
ValueField="class_id"
Editable="false"
TypeAhead="true"
TriggerAction="All"
SelectOnFocus="true"
Mode="Local"
ForceSelection="true"
StoreID="ClassStore"
Width="110px"
>
<Listeners>
<Select Handler="Coolite.AjaxMethods.Resource_SelectedIndexChanged();" />
</Listeners>
</ext:ComboBox>
</td>
<td>
<ext:ComboBox ID="type_ComboBox" runat="server"
DisplayField="type_name"
ValueField="type_id"
Editable="false"
TypeAhead="true"
TriggerAction="All"
SelectOnFocus="true"
Mode="Local"
ForceSelection="true"
StoreID="TypeStore"
Width="110px"
>
</ext:ComboBox>
</td>
</tr>
</table>
下面是后台.cs主要代码: