Ext级联菜单
一、实现方法
a) 以一个二级联动为例,定义两个Store对象
var store = new Ext.data.Store({
// proxy: new Ext.data.HttpProxy({url:'07-04-01.txt'}),
proxy: new Ext.data.HttpProxy({url:'test.jsp?id=1'}),
reader: new Ext.data.ArrayReader({}, [
{name: 'value'},
{name: 'text'}
])
});
var store2 = new Ext.data.Store({
// proxy: new Ext.data.HttpProxy({url:'07-04-01.txt'}),
proxy: new Ext.data.HttpProxy({url:'test2.jsp'}),
reader: new Ext.data.ArrayReader({}, [
{name: 'value'},
{name: 'text'}
])
});
解析:url 属性为要访问的jsp页面路径或者Action的路径,
若访问的是jsp页面应将多余的脚本去掉避免发生冲突。
ArrayReader为数组读取器,用于读取请求返回的字符串数组。Name:’对应值’ 为该数组的每一项对应的字段名,我们可以通过指定的字段名给value和label赋值。
b) 定义combox
var combo = new Ext.form.ComboBox({
store: store,//代表此下拉选框的数据
emptyText: '请选择',//代表下拉选框的默认值
mode: 'local',//代表下拉选框的读取方式
triggerAction: 'all',//是否采用自动匹配用户输入进行选择。
valueField: 'value',//对应value的字段名
displayField: 'text' //对应显示文本的字段名
});
解析:应定义两个combox 即用于级联的两个下拉菜单
c) 定义其中一个combox的onselect事件
combo.on("select",function(comboBox){
var value=comboBox.getValue();
store2.load({params:{id:value}});
//可以用params:{}传参
})
解析:在这个combox下拉选框被选择时加载相应的联动选框的store
d) Stroe的load方法
在定义完stroe后 数据是不会加载的可以在相应的combox 中通过加入mode: remote 或者通过stroe.load()方法进行手动加载。
e) 将定义的下拉选框放入form中
注意:应将form的加载放入Ext.onReady(function(){})中
var form2 = new Ext.form.FormPanel({
labelAlign: 'right',
title: 'form',
labelWidth: 50,
frame:true,
url: 'table2.jsp',
width: 280,
items: [combo2,combo1]
});
form2.render("div2");
//form的加载位置
分享到:
相关推荐
关于TreePanel实现菜单级联选中效果的实例代码,核心思路是在树节点的选中状态发生变化时,触发相应的事件,并在事件处理函数中编写逻辑代码,来同步更新节点的状态。以下是实现级联选中效果的逻辑: 1. 点击父级...
它提供了大量的UI组件,如表格、图表、窗口、菜单等,以及强大的布局管理,使得开发者可以构建出美观、交互性强的用户界面。 集成这些技术,可以构建出一个完整的Java Web应用架构。Struts2负责控制流程,Spring...
要实现单选功能,ComboBoxTree可能使用了Ext.selection.Model类,通过配置singleSelect选项来限制用户只能选择一个节点。单击一个节点时,其他已选中的节点将被自动取消选中。这在需要用户做出唯一选择的场景中非常...
1、修复combobox在级联操作时,传递的swd参数值为null,而不是选中值。 2、datagrid的addEventListener 方法增加对事件onExpandRow和onCollapseRow的控制。 3、tree增加自定义属性 attributes,用于简单数据加载时,...
在“EXT 实现省份--城市--地区--级连”这个主题中,我们将探讨EXT如何用来实现多级联动选择的功能,如省份、城市、地区之间的级联选择。 在Web应用中,用户可能需要选择一个地理位置,通常是从国家到省份,再到城市...
在描述中,创建了一个新的`TreePanel`实例,并设置了多个配置选项,如`el`, `animate`, `title`, `collapsible`, `enableDD`, `enableDrag`, `rootVisible`, `autoScroll`, `autoHeight` 和 `width`。 - `el`:...
- **菜单的实现**:实现系统的导航菜单功能。 - **实现登录**:实现用户登录功能,验证用户身份。 - **动态Grid**:实现动态加载和更新表格数据的功能。 - **数据的增删改**:实现对数据库中数据的增加、删除、修改...
创建树形结构的实例需要调用`createtree`函数,其返回一个可以配置和操作的对象: ```javascript var tree = new createtree(); ``` 接下来,可以通过一系列的方法对这个对象进行配置,以满足具体的应用需求。 ##...