`
357029540
  • 浏览: 732798 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Extjs的comboBox的级联显示

阅读更多
在Extjs中在form中利用comboBox来做级联操作是非常常见的一种操作,但是在Extjs中并不是用的原始html的select方法,而是使用的input进行控制。在这里完成了一个comboBox的级联显示代码.使用的是extjs3.2版本。


    java代码:

   action类: 

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

public class FunctionListAction {

public void cascadeCombo(){

String province = "[['重庆','重庆'],['四川','四川']]";

String citySiChuan = "[['成都','成都'],['乐山','乐山'],['绵阳','绵阳'],['广安','广安']]";

String cityChongQing = "[['长寿','长寿'],['渝北','渝北'],['江北','江北'],['南坪','南坪']]";

String countyChengDu = "[['锦江区','锦江区'],['武侯区','武侯区'],['青羊区','青羊区'],['高新区','高新区'],['成华区','成华区'],['金牛区','金牛区']]";

String countryUnknow = "[['不知道','不知道']]";

HttpServletRequest request = ServletActionContext.getRequest();

String type = request.getParameter("type");//获取操作的选择框参数

HttpServletResponse response = ServletActionContext.getResponse();

response.setCharacterEncoding("utf-8");

try{

if("province".equals(type)){

response.getWriter().print(province);

}else if("city".equals(type)){

String prov = request.getParameter("id");

if("重庆".equals(prov)){

response.getWriter().print(cityChongQing);

}else if("四川".equals(prov)){

response.getWriter().print(citySiChuan);

}

}else if("county".equals(type)){

String city = request.getParameter("id");

if("成都".equals(city)){

response.getWriter().print(countyChengDu);

}else{

response.getWriter().print(countryUnknow);

}

}

}catch (IOException e) {

e.printStackTrace();

}

}

}

jsp文件:


<html>

  <head>

     <script type="text/javascript"></script>

     <link rel="stylesheet" type="text/css" href="./ext/resources/css/ext-all.css">

     <script type="text/javascript" src="./ext/adapter/ext/ext-base.js"></script>

     <script type="text/javascript" src="./ext/ext-all.js"></script>

     <script type="text/javascript" src="./js/combo.js"></script>

     <link rel="stylesheet" type="text/css" href="./css/menu.css">

  </head>

  <body>

    <div id="container">

        <input id="province" type="text" />

        <input id="city" type="text" />

        <input id="country" type="text" />

</div>

  </body>

</html>

js文件:

Ext.onReady(function(){



var comboProvince = new Ext.form.ComboBox({

   store:storeProvince,

   applyTo:'province',

   emptyText:'请选择省份',

   mode:'local',

   //mode:'remote',//点击下拉时加载

   editable:false,//不能手输

   triggerAction:'all',

   valueField:'value',

   displayField:'text'

});

storeProvince.load();//立即加载

comboProvince.on('select',function(combox){

   var value = combox.getValue();

   storeCity.load({params:{id:value}});

});

var comboCity = new Ext.form.ComboBox({

   store:storeCity,

   applyTo:'city',

   emptyText:'请选择城市',

   mode:'local',

   editable:false,//不能手输

   triggerAction:'all',

   valueField:'value',

   displayField:'text'

});

comboCity.on('select',function(combox){

   var value = combox.getValue();

   storeCounty.load({params:{id:value}});

});

var comboCounty = new Ext.form.ComboBox({

   store:storeCounty,

   applyTo:'country',

   emptyText:'请选择区县',

   mode:'local',

   editable:false,//不能手输

   triggerAction:'all',

   valueField:'value',

   displayField:'text'

});

comboCounty.on('select',function(combox){

   alert(comboProvince.getValue()+'-'+comboCity.getValue()+'-'+comboCounty.getValue());

});

});

structs.xml配置文件


<package name="struts2" namespace="/" extends="struts-default">

<action name="function_*" class="com.test.action.FunctionListAction" method="{1}"></action>

</package>

截图如下:
分享到:
评论

相关推荐

    extJs ComboBox级联

    ExtJS ComboBox级联是一种在Web应用中常见的交互方式,它允许用户从下拉列表中选择一个值,并且这个选择会影响到另一个ComboBox的选择项,通常用于表示层级关系的数据,比如省份-城市-区县。这种功能在数据筛选、...

    EXTJS的COMBOBOX级联实现和数据提交VALUE[文].pdf

    EXTJS的ComboBox级联实现是Web应用程序中常见的一种交互方式,尤其在数据表单中用于联动选择。在本文中,我们将深入探讨EXTJS如何实现ComboBox的级联效果,并理解其数据提交VALUE的工作原理。 首先,我们需要创建两...

    extJs4 ComboBox组合框实例

    extJs4 ComboBox 代码组合框实例,ComboBox 各个主要参数详细解释

    Extjs3.4.0版本 多选下拉框效果支持多选/全选/全不选

    在ExtJS 3.4.0版本中,多选下拉框(Multiselect Combobox)是一种常见的用户界面组件,用于提供多个选项供用户选择。这个功能增强了标准的单选下拉框,允许用户同时选择多个条目,通常通过复选框实现。在描述中提到...

    ExtJS 设置级联菜单的默认值

    本文将详细介绍如何使用ExtJS框架设置级联菜单的默认值。首先,需要明白在ExtJS中设置普通控件(如文本框)的默认值相对简单,通常只用一行代码即可完成。然而,对于ComboBox(下拉列表组件)来说,情况就没那么简单...

    Extjs4下拉树菜单ComboBoxTree支持单选和多选并且支持展开选中指定节点的通用控件

    ComboBoxTree是ExtJS4中的一个自定义组件,它结合了ComboBox(下拉框)和TreePanel(树形面板)的功能。ComboBox通常用于提供一个下拉列表供用户选择,而TreePanel则用于展示层次结构的数据。ComboBoxTree将这两者...

    Extjs4.0 ComboBox如何实现三级联动

    很多网友在问,Extjs4.0 ComboBox如何实现,好在之前用3.x实现过一个三级联动,如今用Extjs4.0来实现同样的联动效果。其中注意的一点就是,3.x中的model:’local’在Extjs4.0中用queryMode: ‘local’来表示,而且在...

    Extjs4.X下comboboxTree下拉树型菜单,完美支持多选、单选,绝对好用

    ComboboxTree是ExtJS中的一个自定义组件,它扩展了标准的ComboBox组件,增加了树状结构的功能。用户可以在下拉列表中看到一个树形结构,逐级展开节点,选择需要的项。这种组件特别适合于那些需要展示层级关系且允许...

    ssh2+extCombobox联动动态下拉框

    当我们将SSH2与ExtJS ComboBox结合使用时,可以创建动态联动的下拉框,实现数据的级联选择,提高用户交互体验。 在SSH2框架中,Struts2负责处理用户的请求和视图展示,Spring则管理应用的业务逻辑和依赖注入,...

    EXTJS记事本 当CompositeField遇上RowEditor

    在这个场景中,开发者面临的问题是如何在EXTJS的RowEditor中处理由多个Combobox(下拉框)组成的CompositeField,以便实现级联筛选功能。RowEditor是EXTJS中的一个组件,它允许用户直接在表格行上编辑数据,提供了...

    Ext combo 下拉框级联

    例如,假设我们有三个级联的ComboBox:国家、省份和城市。首先,初始化国家的ComboBox,加载所有国家的数据。当用户选择一个国家后,根据所选国家的ID,通过Ajax请求获取对应的省份数据,然后加载到省份的ComboBox中...

    Extjs4学习指南

    - **Combobox三级联动**:实现级联选择框,用于展示层次关系的数据。 #### 5. 员工管理系统 最后,本章节通过构建一个简单的员工管理系统来综合运用前面所学的知识点。 - **准备工作**:介绍项目开始前所需的准备...

    Extjs4-学习指南

    - **Combobox 三级联动**:实现级联选择框的功能。 #### 5. 员工管理系统 - **准备工作**:规划项目结构和所需技术栈。 - **框架的搭建**:配置 Extjs 和后端服务。 - **菜单的实现**:创建导航菜单。 - **实现...

    Extjs控件属性(详细版)

    这个宽度可以级联到字段集内的子容器,确保一致的外观。 - **layout**:定义字段集的布局方式,默认为`form`布局,即垂直排列的表单项。 #### 三、Ext.form.DateField 控件属性 **Ext.form.DateField** 提供了日期...

    ExtJS 下拉多选框lovcombo

    ### ExtJS 下拉多选框lovcombo:省份与城市级联选择实现 #### 背景介绍 在软件开发过程中,经常会遇到需要实现省份、城市等地理位置信息的级联选择功能的需求。对于前端开发者而言,如何高效地实现这一功能成为了...

    EXT2.0中文教程

    4.4.7. 露一小手,组合上面所知,省市县三级级联。哈哈~ 4.4.7.1. 先做一个模拟的,所有数据都在本地 4.4.7.2. 再做一个有后台的,需要放在服务器上咯 4.5. 把form里的那些控件全部拿出来看看 4.6. form提交数据的...

    Ext 开发指南 学习资料

    4.4.7. 露一小手,组合上面所知,省市县三级级联。哈哈~ 4.4.7.1. 先做一个模拟的,所有数据都在本地 4.4.7.2. 再做一个有后台的,需要放在服务器上咯 4.5. 把form里的那些控件全部拿出来看看 4.6. form提交数据的...

Global site tag (gtag.js) - Google Analytics