java--jsp+ssh+select动态结合数据和选择(解)
在三层体系结构和jsp合并项目,如何实现select动态绑定数据和动态选择指定的行?让我们来看看下面的:
1、首先定义一个Bean分类。它用于实例select的结合数据中的每一个id和name:
public class DropDownListBean {
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
2、在service业务逻辑层中,要有dropdownlist数据源list的get和set方法:
public class ToDepartmentUpdatePageAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = 1L;
private DepartmentBean departmentBean;
private List<DropDownListBean> list = new ArrayList<DropDownListBean>();
private int id;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Resource
private IDepartmentManage departmentManage;
public DepartmentBean getDepartmentBean() {
return departmentBean;
}
public void setDepartmentBean(DepartmentBean departmentBean) {
this.departmentBean = departmentBean;
}
public IDepartmentManage getDepartmentManage() {
return departmentManage;
}
public void setDepartmentManage(IDepartmentManage departmentManage) {
this.departmentManage = departmentManage;
}
public List<DropDownListBean> getList() {
return list;
}
public void setList(List<DropDownListBean> list) {
this.list = list;
}
@Override
public String execute() throws Exception {
setDepartmentBean(departmentManage.getDepartments0(" where nid = "+id).get(0));
List tmpList=departmentManage.getddlDepartments();
for (int i = 0; i < tmpList.size(); i++) {
Object[] objects = (Object[]) tmpList.get(i);
DropDownListBean dropDownListBean = new DropDownListBean();
dropDownListBean.setId((String)objects[0]);
dropDownListBean.setName((String)objects[1]);
list.add(dropDownListBean);
}
return "success";
}
}
3、在jsp页面中获取list数据源以及bean对象:
<%
DepartmentBean departmentBean = (DepartmentBean)request.getAttribute("departmentBean");
String selectParentDeptId = String.valueOf(departmentBean.getParentNo()); List<DropDownListBean> ddlList=(List<DropDownListBean>)request.getAttribute("list");
%>
4、在jsp页面中给select动态绑定数据并动态选中:
<select name="departmentBean.parentNo" id="parentNo">
<%
for(int i=0;i<ddlList.size();i++){
DropDownListBean dropDownListBean=ddlList.get(i);
%>
<option value="<%=dropDownListBean.getId()%>" <%if(selectParentDeptId.equals(dropDownListBean.getId().toString())){out.print("selected");} %> ><%=dropDownListBean.getName()%></option>
<% } %>
</select>
版权声明:本文博主原创文章,博客,未经同意不得转载。
java--jsp+ssh+select动态结合数据和选择(解)的更多相关文章
- Jquery+Ajax实现Select动态添加数据
https://blog.csdn.net/zhengxiangwen/article/details/46480687 最近在工作中,遇到了一个关于select的问题.一般情况下,select下拉框 ...
- 《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)
1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select ...
- (转)Jquery+Ajax实现Select动态定数据
解决思路: 在数据库中建立类型字典式表.将下拉框需要添加的项,在数据库表里中文.英文名称对应起来. 下拉框动态绑定数据库表中需要字段. <div id="bgDiv" sty ...
- vuejs 中 select 动态填充数据,后台的数据
selected:"A" 对 selected:A 错. 变量不用引号. 内容一定要引号. https://jsfiddle.net/rgnuaw30/ ...
- python爬取动态网页数据,详解
原理:动态网页,即用js代码实现动态加载数据,就是可以根据用户的行为,自动访问服务器请求数据,重点就是:请求数据,那么怎么用python获取这个数据了? 浏览器请求数据方式:浏览器向服务器的api(例 ...
- Java 和 Python 解析动态 key 的 JSON 数据
一.概述 解析JSON过程中,什么情况都可能遇到.遇到特殊的情况,不会怎么办?肯定不是设计的问题,一定是你的姿势不对. 有这样一种JSON需要解析: { "b3444533f6544&quo ...
- bootstrap-multiselect.js如何动态更新select里的数据
在使用jQuery的bootstrap-multiselect插件时可能会遇到一个问题 就是想要动态的去更新select里的数据 比如我们要使一个id=select的选择框实现多选 那么先用ajax获 ...
- java基础之集合框架--使用ArrayList类动态 存储数据
一.ArrayList是List接口下的一个实现类,实现了长度可变的.连续的数组:拥有数组的特性. 遵循了LIst的规则:不唯一的.有序的. 如果没有增加泛型的话,集合中可以添加任何类型的数据. 使用 ...
- [Java] JSP笔记 - Filter 过滤器
一.什么是Web过滤器 Servlet API 很久以前就已成为企业应用开发的基石,而 Servlet 过滤器则是对 J2EE 家族的相对较新的补充. Servlet 过滤器是可插入的 Web 组件, ...
随机推荐
- PMC
PMC = Production Material Control 生产及物料控制,通常分为两个部分: PC:生产控制或生产管制(台.日资公司俗称手配)主要职能是生产的计划与生产的进度控制 : MC: ...
- .Net中String和StringBuilder的区别
String对象是不可变的而StringBuilder则不是这样,可以方便的Append进行扩展. 比如:string aa="123456",那么aa就会在内存中占用一块能放下这 ...
- docker 私有仓库上传镜像,其他docker服务器从私有镜像下载
<pre name="code" class="cpp">docker:/data# docker ps CONTAINER ID IMAGE CO ...
- java常量池理解
String类两种不同的创建方式 String s1 = "zheng"; //第一种创建方式 String s2 = new String("junxiang" ...
- Redis的同步(主从复制)和Redis Sentinel
Redis的同步可以让其他服务器拥有一个不断更新的数据副本,从而使拥有数据副本的服务器可以处理客户端发出的读请求. 1.Redis同步的方法: 我们可以通过发送SLAVEOF host port命令来 ...
- Android快捷支付SDK Demo resultStatus={4001};memo={參数错误};result={}问题
在支付宝中粘贴RSA公钥并提交,然后问题就完美攻克了...
- java中表示二进制、八进制、十进制、十六进制,double、float、整型
java里不能这样表示二进制,只能是 8,10,16进制 8: 前置 0 10: 不需前置 16: 前置 0x 或者 0X double:2 ...
- 整理的一些数据库不容易想到的SQL语句实例一
1.行转列SQL语句 SELECT * FROM ( SELECT [FID] , [Weeks] , [Qty] FROM dbo.TempTable where Weeks is not null ...
- VM 443端口冲突解决办法
netstat -aon|findstr "443" 找到占用443的进程号: tasklist|findstr "2016" 根据进程号2016找到占用443 ...
- Java 基本日期类使用(一)
一.java.util.Date Date表示特定的瞬间,精确到毫秒,其子类有Date.Time.Timestap.默认情况下输出的Date对象为:Mon Oct 13 17:48:47 CST 20 ...