想了一天 也做了一天 最后是数据结构不对 ,没能 动态级联 类别和子类别 二级菜单
需求是: 商品要进行分类 ,希望 注册商品时候 能选择它属于哪一个大类的一个子类别,,需要动态的选择下拉菜单 ,就像选择省份,会出现相应的城市
<s:formname="f1">
<s:doubleselectlist="#request.provinceList"listKey="id"listValue="name"
doubleName="cityId"
doubleList="#request.cityMap.get(top.id)"doubleListKey="id"doubleListValue="name"/>
</s:form>
这是doubleselect的jsp代码
list是第一个菜单的类别, listKey相当于input标签的 name listValue是显示的数据项,相当于input标签的value
doubleList是Map<k,k>的数据结构,get(top.id) 表示从第一级菜单的参数id来查询对应的value,top.id作为map的key
java代码
HttpServletRequest request = ServletActionContext.getRequest();
SelectSql sel = new SelectSql();
List<Category> categoryList= new ArrayList<Category>();
categoryList= sel.selectCategoryAll();
request.setAttribute("categoryList", categoryList);
Map<String, List<SonCategory>> sonMap = new HashMap<String, List<SonCategory>>();
for(int i=0;i<categoryList.size();i++){
String cateId = categoryList.get(i).getCategoryId();
sonMap.put(cateId, sel.findSonCateById(cateId));
}
jsp代码
<s:form name="f1">
<s:doubleselect list="#request.categoryList" listKey="categoryId" listValue="categoryName"
doubleName="cityId"
doubleList="#request.sonMap.get(top.categoryId)" doubleListKey="sonCategoryId" doubleListValue="sonCategoryName"/>
</s:form>
分享到:
相关推荐
在Struts2中,`doubleselect`标签是一个非常实用的组件,用于创建级联选择列表,即两个下拉列表之间存在关联,当用户在一个下拉列表中选择一个选项时,另一个下拉列表会根据所选值动态更新其选项。这种功能在处理如...
Doubleselect是Struts2提供的一种实现级联选择的组件,允许用户在一个下拉框的选择影响另一个下拉框的选项。 在Struts2级联doubleselect的实现中,主要涉及以下几个关键知识点: 1. **Action类**:Action类是业务...
总之,`struts2 doubleselect`标签是构建动态级联下拉菜单的有效工具,它允许开发者通过`Action`将数据库中的层级关系展示给用户,提高用户界面的交互性。理解`list`、`listKey`、`listValue`、`doubleList`、`...
Struts2 Doubleselect标签是用于创建二级联动下拉列表的,这种控件在网页表单中常见于需要显示层次关系数据的场景,例如省份-城市的选择。Doubleselect标签结合了两个下拉列表,其中一个的选择会影响到另一个下拉...
通过以上步骤,就可以利用Struts2的`doubleselect`标签实现二级联动下拉菜单的功能。这个功能在实际项目中非常常见,例如在地址选择、部门与员工选择等场景,能够简化用户的操作,提高数据输入的准确性。需要注意的...
在Struts2中,我们有许多内置的标签来帮助开发者更方便地处理表单元素,例如`<s:select>`和`<s:doubleselect>`就是其中两个用于创建下拉列表的标签。下面我们将详细探讨这两个标签以及如何在J2EE项目中使用它们。 1...
在Struts2中,`doubleselect`标签是一个非常实用的功能,它允许用户在两个级联的下拉列表中进行选择,通常用于处理层级数据,如分类和子分类,或者部门和员工等关系。 在描述中提到的官方示例虽然展示了`...
在Struts2中,`doubleselect`标签是一种非常实用的标签,主要用于创建两个级联选择框。这种标签允许用户在一个下拉列表中进行选择时,另一个相关的下拉列表会自动更新其选项。这对于处理多级数据结构,比如国家/省份...
在本文中,我们将深入探讨如何使用ExtJS 4和Struts2框架实现省市区三级联动的完整示例。这个示例适用于需要在Web应用程序中实现地理区域选择功能的情况,例如用户地址输入。以下是对该技术栈及其实现方法的详细说明...
Struts2是一个强大的Java web应用程序框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建可维护性、可扩展性良好的企业级应用的工具。"Struts2-Double-Select-Example"这个项目是Struts2框架的...
在这个场景中,我们关注的是一个名为"doubleSelect.zip"的压缩包文件,该文件包含了一个jQuery插件,用于实现两级级联下拉列表的功能。这种功能在很多交互式网页中常见,例如在选择地区、类别或层级结构时,用户首先...
Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建可维护性高、结构清晰的Java Web应用程序。在Struts2框架中,`doubleselect`标签是用于创建一对多选择的HTML元素,通常表现为两个下拉列表,其中一个选项...
### Struts2中的DoubleSelect标签的用法 在Struts2框架中,`doubleSelect`标签是一种非常实用的工具,它允许用户在一个页面上通过两次选择来完成复杂的数据关联操作。这种标签尤其适用于多级菜单或者层级关系的选择...
在"doubleselect.html"这个文件中,我们可以预期看到一个演示如何实现二级联动的HTML页面。这个页面可能包含两个或更多的元素,它们之间通过jQuery进行关联。jQuery的选择器功能使得我们能够轻松地选取DOM元素,而其...
总的来说,Struts二级联动是通过Form Bean、Action、JSP和配置文件共同协作实现的,虽然`doubleselect`提供了一种直接的解决方案,但在实际开发中,可能需要结合JavaScript和其他技术来优化用户体验。在处理复杂的...
Struts2依赖于WebWork来处理配置文件的加载与解析工作,Struts2自身只做了一些轻量级的处理。 3. **`org.apache.struts2.dispatcher`**:这是Struts2的核心组件之一,主要负责处理HTTP请求和响应。其中,`...
在视图层,Struts2提供了一系列增强的组件,位于`org.apache.struts2.components`包中,包括updownselect、doubleselect、datetimepicker、token、tree等,这些组件增强了用户体验,并且支持主题(theme)以自定义...