<s:action name="beanList" namespace="/system" id="bean" />
<s:select headerValue="--Please select--" headerKey="" list="#bean.testList"
name="obj.userName" listKey="userName" listValue="userName" value="%{obj.userName.trim()}"/>
上面就是我使用的test实例了!挨个解释吧!
首先你要用到select,可以只使用 <s:select>标签,解释下这个标签属性:
headerValue : 默认值value
headerKey : 默认name
list : 源数据 (可以在action方法里从数据库获取list)
name : 被选数据存放的位置(这里我方在对象obj的属性值userName中<需在action中定义该对象>)
listKey : 下拉选项的name
listValue : 下拉选项的value
value : 默认值
但是一个下拉列表往往是可以重复使用的,那么我们将它单独定义到一个action中,这里我的action的namespace是system,所以如我们上面定义的<s:action>标签:
name : 源数据名(对应get方法名)
namespace : 我们在struts.xml中定义的name
id : 相当于别名(在后面调用该actiond的时候直接用#号使用)
那就这样了,我就用到这些!
今天遇到的是什么问题呢? 就是value了. 我在form表单跳转的时候下拉列表可以很好的保存值,但是通过url跳转的时候始终无法获取值!我在页面可以打印出传递的值,可到了下拉列表就不行!
后来试了老半天,才发现是html在eclipse中format的时候回车键被换成空格,这让我的值后面都有了空字符串,而select获取默认值又是通过key来一一对应的,所以就获取不到了,在后面加上trim属性就好了,太残念了....
还有获取值的方式也很郁闷,使用%来获取的,看来的确要补下ognl才行啊.....
<s:select headerKey="" headerValue="请选择" name="program" tooltip="select your program" list="#{'1':'Windows','2':'Linux','3':'Java'}"/>
<s:select headerKey="" headerValue="请选择" name="program" tooltip="select your program" list="{'Windows','Linux','Java'}"/>
<s:action name="menuKindSelect" namespace="/admin" id="bean"></s:action>
<s:select list="#bean.mainMenuKindList" name="mainKind" listKey="mainKind" listValue="mainName" headerKey="no" headerValue="请选择" tooltip="select your program" />
其中:menuKindSelect是在struts.xml中定义的action
mainMenuKindList是在action类中定义的一个List类型的值,在action中需要有相应的getter/setter方法,mainKind是一个bean,在该bean种有mainKind,mainName属性
在action类中要获得下拉列表选中的值:
mainKind = request.getParameter("mainKind") ;//参数中的mainKind是中的listKey="mainKind" 的mainKind
获得的值是:name="mainKind"的值,而listValue="mainName"只是页面显示的值
分享到:
相关推荐
4. **JSP页面**:在JSP页面上,我们可以使用Struts2的标签库,如`s:select`,来创建下拉菜单。第一个下拉菜单的选项应由顶级分类填充,第二个下拉菜单的选项则依赖于第一个下拉菜单的选择,通过JavaScript或jQuery...
在Struts2中,我们可以利用Dojo的`dijit.form.Select`组件来创建下拉菜单,并通过`dojo.data.ItemFileWriteStore`来动态加载和管理菜单项。 以下步骤概述了实现这个功能的一般流程: 1. **配置Struts2**:确保在你...
在Struts2中实现级联菜单是一项常见的需求,通常用于构建复杂的下拉选择框,使得用户能够逐级选择相关选项。级联菜单在数据表关联或者层级结构的展示中非常实用,例如地区选择、部门分类等。 首先,我们需要理解...
对于下拉菜单,Struts2提供了多种方式来实现,如使用<s:select>标签,它可以动态地从后台数据中填充选项,提供用户友好的选择体验。而文件上传功能,Struts2支持通过标签来处理,它能够接收用户上传的文件,并将其...
struts2 中从别的表中遍历数据 填充进入下拉菜单 用标签显示. struts2的版本为2.1.8 ”” name=”” value=”” headerKey=”” headerValue=”” listKey=”” listValue=”” /> (1)其中 list是必须...
例如,我们可以使用 `<s:text>` 标签来显示文本,使用 `<s:form>` 标签来创建表单,使用 `<s:select>` 标签来创建下拉菜单等。 二、Struts2 国际化功能 Struts2 框架提供了强大的国际化功能,用于支持多语言显示。...
总结起来,"struts2+oracle三级联动菜单"实例展示了如何结合Struts2框架、Oracle数据库和前端技术实现动态的级联下拉菜单。它涉及到Action的处理逻辑、DAO的数据库操作、JSP的页面渲染以及JavaScript的前端交互。...
在JSP开发中,Struts2框架提供了丰富的标签库,其中`s:select`标签用于创建HTML选择列表(即下拉菜单)。本篇文章将详细介绍在Struts2中如何使用`s:select`标签,以及通过几个具体例子来展示其用法。 1. 第一个例子...
4. **jQuery UI组件**:除了基本的jQuery功能,插件还提供了jQuery UI库的一些组件,如对话框(`dialog`)、下拉菜单(`selectmenu`)、滑块(`slider`)等,这些组件可以方便地通过Struts2的JSP标签引入到页面中。...
* select 标签:用于构建下拉菜单。 * radio 标签:用于构建单选按钮。 * checkbox 标签:用于构建复选框。 本资源摘要信息涵盖了Struts 2 标签库的概述、控制标签、数据标签和表单标签等知识点,旨在帮助开发者...
这些标签使得开发者能够快速生成各种表单元素,如文本输入框、密码框、单选按钮、复选框、下拉菜单等,同时能够自动处理表单数据的绑定和验证。例如: - `<html:form>`:用于创建一个表单,可指定提交的action。 - ...
在JSP页面上,我们可以使用Struts 标签库中的 `<html:select>` 标签来创建级联下拉菜单。当用户选择大类别时,JavaScript 可以用来异步更新子类别下拉菜单的内容。这通常通过AJAX(Asynchronous JavaScript and XML...
3. **表单标签**:Struts2提供了一整套表单相关的标签,如`<s:form>`定义表单,`<s:submit>`提交表单,`<s:checkboxlist>`和`s:select`用于创建多选和下拉菜单,以及`<s:iterator>`遍历集合数据。 4. **验证标签**...
例如,`<s:checkboxlist>`允许用户从列表中选择多个选项,而`<s:combobox>`则用于创建下拉菜单。 D. `<s:date>`, `<s:datetimepicker>`, `<s:debug>`, `<s:div>`: `<s:date>` 标签用于格式化日期,`...
根据给定的文件信息,我们可以总结出以下关于Java Select与两级级联下拉菜单的知识点: ### 一、Java Select与Struts框架 在Java Web开发中,`Select`元素通常用于创建HTML中的下拉菜单。当涉及到多级级联选择时,...
用于创建下拉菜单中的选项组。例如:`<s:optgroup label="Categories" list="categoriesList" />`,这里 `label` 指定了选项组的标签,`list` 指定了选项列表。 #### 34. `<s:optiontransferselect>` - 选项转移...
- **说明**: 用于组合相关选项,使得下拉菜单更加清晰。 29. **optiontransferselect** - 创建选项转移选择框。 - **示例代码**: ```xml ,'option2','option3'}" headerKey="" headerValue="Select Options" />...