`
兩ting
  • 浏览: 78077 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

flex学习之联动下拉框实现

    博客分类:
  • flex
阅读更多
Java代码 复制代码 收藏代码
  1. TbArea.java
  2. package com.zn.entity;
  3. import java.util.HashSet;
  4. import java.util.Set;
  5. /**
  6. * TbArea entity.
  7. *
  8. * @author MyEclipse Persistence Tools
  9. */
  10. public class TbArea implements java.io.Serializable {
  11. // Fields
  12. private String areaCode;
  13. private String areaName;
  14. private String parentAreaCode;
  15. private String root;
  16. private Short zone;
  17. private String navigateUrl;
  18. private Short areaType;
  19. private Set usercustems = new HashSet(0);
  20. // Constructors
  21. /** default constructor */
  22. public TbArea() {
  23. }
  24. /** full constructor */
  25. public TbArea(String areaName, String parentAreaCode, String root,
  26. Short zone, String navigateUrl, Short areaType, Set usercustems) {
  27. this.areaName = areaName;
  28. this.parentAreaCode = parentAreaCode;
  29. this.root = root;
  30. this.zone = zone;
  31. this.navigateUrl = navigateUrl;
  32. this.areaType = areaType;
  33. this.usercustems = usercustems;
  34. }
  35. // Property accessors
  36. public String getAreaCode() {
  37. return this.areaCode;
  38. }
  39. public void setAreaCode(String areaCode) {
  40. this.areaCode = areaCode;
  41. }
  42. public String getAreaName() {
  43. return this.areaName;
  44. }
  45. public void setAreaName(String areaName) {
  46. this.areaName = areaName;
  47. }
  48. public String getParentAreaCode() {
  49. return this.parentAreaCode;
  50. }
  51. public void setParentAreaCode(String parentAreaCode) {
  52. this.parentAreaCode = parentAreaCode;
  53. }
  54. public String getRoot() {
  55. return this.root;
  56. }
  57. public void setRoot(String root) {
  58. this.root = root;
  59. }
  60. public Short getZone() {
  61. return this.zone;
  62. }
  63. public void setZone(Short zone) {
  64. this.zone = zone;
  65. }
  66. public String getNavigateUrl() {
  67. return this.navigateUrl;
  68. }
  69. public void setNavigateUrl(String navigateUrl) {
  70. this.navigateUrl = navigateUrl;
  71. }
  72. public Short getAreaType() {
  73. return this.areaType;
  74. }
  75. public void setAreaType(Short areaType) {
  76. this.areaType = areaType;
  77. }
  78. public Set getUsercustems() {
  79. return this.usercustems;
  80. }
  81. public void setUsercustems(Set usercustems) {
  82. this.usercustems = usercustems;
  83. }
  84. }
TbArea.java
package com.zn.entity;

import java.util.HashSet;
import java.util.Set;

/**
 * TbArea entity.
 * 
 * @author MyEclipse Persistence Tools
 */

public class TbArea implements java.io.Serializable {

	// Fields

	private String areaCode;
	private String areaName;
	private String parentAreaCode;
	private String root;
	private Short zone;
	private String navigateUrl;
	private Short areaType;
	private Set usercustems = new HashSet(0);

	// Constructors

	/** default constructor */
	public TbArea() {
	}

	/** full constructor */
	public TbArea(String areaName, String parentAreaCode, String root,
			Short zone, String navigateUrl, Short areaType, Set usercustems) {
		this.areaName = areaName;
		this.parentAreaCode = parentAreaCode;
		this.root = root;
		this.zone = zone;
		this.navigateUrl = navigateUrl;
		this.areaType = areaType;
		this.usercustems = usercustems;
	}

	// Property accessors

	public String getAreaCode() {
		return this.areaCode;
	}

	public void setAreaCode(String areaCode) {
		this.areaCode = areaCode;
	}

	public String getAreaName() {
		return this.areaName;
	}

	public void setAreaName(String areaName) {
		this.areaName = areaName;
	}

	public String getParentAreaCode() {
		return this.parentAreaCode;
	}

	public void setParentAreaCode(String parentAreaCode) {
		this.parentAreaCode = parentAreaCode;
	}

	public String getRoot() {
		return this.root;
	}

	public void setRoot(String root) {
		this.root = root;
	}

	public Short getZone() {
		return this.zone;
	}

	public void setZone(Short zone) {
		this.zone = zone;
	}

	public String getNavigateUrl() {
		return this.navigateUrl;
	}

	public void setNavigateUrl(String navigateUrl) {
		this.navigateUrl = navigateUrl;
	}

	public Short getAreaType() {
		return this.areaType;
	}

	public void setAreaType(Short areaType) {
		this.areaType = areaType;
	}

	public Set getUsercustems() {
		return this.usercustems;
	}

	public void setUsercustems(Set usercustems) {
		this.usercustems = usercustems;
	}

}

TbArea.hbm.xml TbAreaDAO.java 就不贴出来数据访问是用的remoting-config.xml来控制的.

Html代码 复制代码 收藏代码
  1. <destination id="Service">
  2. <properties>
  3. <source>com.zn.service.BaseService</source>
  4. </properties>
  5. </destination>
<destination id="Service">
		<properties>
			<source>com.zn.service.BaseService</source>
		</properties>
	</destination>

 

Java代码 复制代码 收藏代码
  1. public class BaseService {
  2. /**
  3. * @param wqb
  4. */
  5. public BaseService(){}
  6. public String hello(){
  7. System.out.println("---------hello-----------------");
  8. return "hehe";
  9. }
  10. @SuppressWarnings("unchecked")
  11. public List<TbArea> getArea(String areaCode){
  12. TbAreaDAO ta=new TbAreaDAO();
  13. List<TbArea> arealist=new ArrayList<TbArea>();
  14. if(areaCode==null){
  15. arealist=ta.findByAreaType(1);
  16. }else{
  17. arealist=ta.findByParentAreaCode(areaCode);
  18. }
  19. return arealist;
  20. }
  21. }
public class BaseService {

	/**
	 * @param wqb
	 */
	public BaseService(){}
	
	public String hello(){
		System.out.println("---------hello-----------------");
		return "hehe";
	}

	@SuppressWarnings("unchecked")
	public List<TbArea> getArea(String areaCode){
		TbAreaDAO ta=new TbAreaDAO();
		List<TbArea> arealist=new ArrayList<TbArea>();
		if(areaCode==null){
			arealist=ta.findByAreaType(1);
		}else{
			arealist=ta.findByParentAreaCode(areaCode);
		}
		return arealist;
	}
}

再就到FLEX的页面了:

Xml代码 复制代码 收藏代码
  1. <mx:Script>
  2. <![CDATA[
  3. import mx.rpc.events.FaultEvent;
  4. import mx.validators.ValidationResult;
  5. import mx.rpc.events.ResultEvent;
  6. import mx.collections.ArrayCollection;
  7. [Bindable]
  8. var chageArea:int=0;
  9. function init():void{
  10. service.getArea(null);
  11. }
  12. function getAreaResult(event:ResultEvent):void{
  13. if(chageArea==0){
  14. area1.dataProvider=event.result;
  15. }else if(chageArea==1){
  16. area2.dataProvider=event.result;
  17. }else{area3.dataProvider=event.result;}
  18. }
  19. function getAreaFault(event:FaultEvent):void{
  20. }
  21. function chageArea1():void{
  22. chageArea=1;
  23. area3=null;
  24. service.getArea(area1.selectedItem.areaCode);
  25. }
  26. function chageArea2():void{
  27. chageArea=2;
  28. service.getArea(area2.selectedItem.areaCode);
  29. }
  30. ]]>
  31. </mx:Script>
  32. <mx:RemoteObject id="service" destination="Service">
  33. <mx:method name="getArea" result="getAreaResult(event)" fault="getAreaFault(event)"/>
  34. </mx:RemoteObject>
  35. <mx:FormItem label="地区:" width="100%" fontSize="12">
  36. <mx:HBox width="100%">
  37. <mx:ComboBox fontSize="12" id="area1" width="75" labelField="areaName" change="chageArea1()"></mx:ComboBox>
  38. <mx:Label text="省" textAlign="center" width="20" height="100%" fontSize="14"/>
  39. <mx:ComboBox width="80" fontSize="12" id="area2" labelField="areaName" change="chageArea2()"></mx:ComboBox>
  40. <mx:Label text="市" width="20"/>
  41. <mx:ComboBox width="120" id="area3" labelField="areaName"></mx:ComboBox>
  42. </mx:HBox>
  43. </mx:FormItem>
<mx:Script>
		<![CDATA[
			import mx.rpc.events.FaultEvent;
			import mx.validators.ValidationResult;
			import mx.rpc.events.ResultEvent;
			import mx.collections.ArrayCollection;
			[Bindable]
			var chageArea:int=0;
			function init():void{
			service.getArea(null);
			}
			function getAreaResult(event:ResultEvent):void{
				if(chageArea==0){
					area1.dataProvider=event.result;
				}else if(chageArea==1){
					area2.dataProvider=event.result;
				}else{area3.dataProvider=event.result;}
			}
			function getAreaFault(event:FaultEvent):void{
			
			}
			function chageArea1():void{
				chageArea=1;
				area3=null;
				service.getArea(area1.selectedItem.areaCode);
			}
			function chageArea2():void{
				chageArea=2;
				service.getArea(area2.selectedItem.areaCode);
			}
			
		]]>
	</mx:Script>
	
	
	<mx:RemoteObject id="service" destination="Service">
		<mx:method name="getArea" result="getAreaResult(event)" fault="getAreaFault(event)"/>
	</mx:RemoteObject>

<mx:FormItem label="地区:" width="100%" fontSize="12">
<mx:HBox width="100%">
<mx:ComboBox fontSize="12" id="area1" width="75" labelField="areaName" change="chageArea1()"></mx:ComboBox>
<mx:Label text="省" textAlign="center" width="20" height="100%" fontSize="14"/>
<mx:ComboBox width="80" fontSize="12" id="area2" labelField="areaName" change="chageArea2()"></mx:ComboBox>
<mx:Label text="市" width="20"/>
<mx:ComboBox width="120" id="area3" labelField="areaName"></mx:ComboBox>
</mx:HBox>
</mx:FormItem>

 

基本上重要实现代码都有了,先留在这也许下次用得上,呵呵!

分享到:
评论

相关推荐

    asp二级联动下拉框,三级联动下拉框

    在ASP中,二级联动和三级联动下拉框是常见的功能,通常用于实现数据的筛选和过滤,例如在地区选择、商品分类等场景。下面将详细讲解如何在ASP中实现这些功能。 ### 二级联动下拉框 二级联动下拉框是指两个下拉框...

    基于layui开发的省市区三级联动下拉框.zip

    总之,"基于layui开发的省市区三级联动下拉框"是一个很好的学习案例,它结合了layui的UI设计和vue.js的数据处理能力,展示了如何通过前端技术实现动态的交互效果。对于前端开发者来说,掌握这样的技能对于提升项目...

    三级联动下拉框实现

    这个技术的关键在于通过JavaScript或者jQuery等前端库来实现各个下拉框之间的联动效果。当用户在某一级下拉框中选择某个选项时,其他关联的下拉框会自动更新其可选选项,以反映所选选项的影响。这种功能提高了用户...

    jquery 三级联动下拉框

    jquery 三级联动下拉框jquery 三级联动下拉框jquery 三级联动下拉框jquery 三级联动下拉框jquery 三级联动下拉框jquery 三级联动下拉框

    layui-省市县三级联动下拉框-HTML源码

    总结,实现"layui-省市县三级联动下拉框"的核心在于理解HTML、JavaScript和数据结构之间的关系,通过事件监听和动态更新DOM来实现联动效果。这个功能不仅在实际项目中广泛应用,也是提升用户体验的关键部分。同时,...

    mvc3二级联动下拉框

    4. JavaScript和jQuery:为了实现联动效果,通常会在前端使用JavaScript或jQuery来监听一级下拉框的“change”事件。当事件触发时,发送Ajax请求到服务器,获取新的二级下拉框数据,并更新到DOM中。 5. Ajax:ASP...

    js三级联动下拉框

    - 通过调用`CLASS_LIANDONG_YAO`类的实例化对象的方法来实现下拉框间的联动效果。 - 例如,当用户选择`s1`下拉框中的某个选项时,会触发`s1`的`onchange`事件,进而调用`optionChange`方法更新`s2`下拉框的内容。 ...

    简单的vue三级联动下拉框代码

    5. 联动逻辑:在组件内或父组件中实现联动逻辑,当某个下拉框的值改变时,根据新的值筛选出对应级别的数据,并更新到下一级下拉框的选项。 四、代码结构 - `index.html`:HTML文件,包括Vue实例的挂载点和组件模板...

    四级联动下拉框

    - Vue.js/React.js/Angular.js:现代Web开发中,这些前端框架提供了更高效的数据绑定和组件化功能,可以方便地实现联动下拉框。 4. **数据结构**: - 数据通常以JSON格式存储,每个下拉框的选项是嵌套的,比如省-...

    javascript实现二级联动下拉框

    为了让下拉框实现联动,需要在省份下拉框上添加一个事件监听器,当用户选择省份时触发相应的函数来更新城市下拉框的内容。 ```javascript sltProvince.addEventListener('change', getCity); // 监听省份下拉框的...

    AJAX版省市区三级联动下拉框

    学习AJAX版省市区三级联动下拉框,不仅有助于提升前端开发技能,还能对前后端交互有更深入的理解。通过阅读"使用说明.txt",解压并运行"AJAXTest2.rar"中的代码,结合"附赠:超多精品源码.htm"进行对照学习,能帮助...

    js2级省市联动下拉框

    在网页开发中,"js2级省市联动下拉框"是一种常见的交互设计,它用于创建一个用户友好的界面,让用户能够方便地选择省份和城市。这个功能通常在填写地址、设置配送区域等场景中出现。下面我们将详细探讨如何实现这样...

    jquery动态创建联动下拉框

    接下来,我们将使用jQuery来实现联动效果。主要步骤如下: 1. **监听主下拉框的`change`事件**:当用户在主下拉框中做出选择时,我们需要触发更新子下拉框的逻辑。 ```javascript $("#category").on("change", ...

    javascript实现二级联动下拉框.docx

    JavaScript 实现二级联动下拉框 本文将详细介绍如何使用 JavaScript 实现二级联动下拉框,包括标题、描述、标签、部分内容等信息。 标题:JavaScript 实现二级联动下拉框 描述:JavaScript 实现二级联动下拉框是...

    layui下拉框二级数据联动 fzzx.zip

    通过这个案例,开发者可以学习到如何结合layui的`form`模块和JavaScript异步请求来实现下拉框的联动效果,这在实际项目中是非常常见的需求。同时,这也是前后端交互的一个典型场景,有助于理解如何将客户端的用户...

    Ajax实现三级联动下拉框

    ### Ajax实现三级联动下拉框的关键技术点与实践 在现代Web开发中,动态加载数据并更新页面元素的能力是提升用户体验的重要手段之一。三级联动下拉框作为一个常见的交互设计,常用于显示具有层级关系的数据,如省份...

    php 三级联动下拉框

    在网页设计中,三级联动下拉框是一种常见的交互元素,特别是在数据层级结构比较复杂的场景下,如地区选择、产品分类等。它通过三个下拉菜单的级联关系,让用户能够逐步细化选择,从大类到小类,最终精确地选取目标...

    三级联动 下拉框

    在网页设计和开发中,"三级联动下拉框"是一种常见的交互元素,它通常用于实现多级关联选择,比如省份-城市-区县的选择。这种功能可以极大地提高用户体验,尤其是在处理大量分类信息时。下面我们将深入探讨这个话题,...

    无限级下联动下拉框

    2. **事件驱动**:组件通过监听用户的选中事件,触发后续下拉框的更新,实现联动效果。 3. **性能优化**:考虑到可能存在的大量级联数据,AdSelect可能采用了延迟加载或按需加载的策略,以减少页面加载时间和服务器...

    JS实现三级联动下拉框

    下面我们将详细探讨如何使用JavaScript实现三级联动下拉框。 首先,我们需要准备HTML结构。每个下拉框(`&lt;select&gt;`)都需要一个唯一的ID,以便于JavaScript获取和操作它们。例如: ```html &lt;select id="province"&gt;...

Global site tag (gtag.js) - Google Analytics