在三层体系结构和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动态结合数据和选择(解)的更多相关文章

  1. Jquery+Ajax实现Select动态添加数据

    https://blog.csdn.net/zhengxiangwen/article/details/46480687 最近在工作中,遇到了一个关于select的问题.一般情况下,select下拉框 ...

  2. 《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)

    1.简介 在实际自动化测试过程中,我们也避免不了会遇到下拉选择的测试,因此宏哥在这里直接分享和介绍一下,希望小伙伴或者童鞋们在以后工作中遇到可以有所帮助. 2.select 下拉框 2.1Select ...

  3. (转)Jquery+Ajax实现Select动态定数据

    解决思路: 在数据库中建立类型字典式表.将下拉框需要添加的项,在数据库表里中文.英文名称对应起来. 下拉框动态绑定数据库表中需要字段. <div id="bgDiv" sty ...

  4. vuejs 中 select 动态填充数据,后台的数据

           selected:"A" 对       selected:A 错.  变量不用引号. 内容一定要引号. https://jsfiddle.net/rgnuaw30/ ...

  5. python爬取动态网页数据,详解

    原理:动态网页,即用js代码实现动态加载数据,就是可以根据用户的行为,自动访问服务器请求数据,重点就是:请求数据,那么怎么用python获取这个数据了? 浏览器请求数据方式:浏览器向服务器的api(例 ...

  6. Java 和 Python 解析动态 key 的 JSON 数据

    一.概述 解析JSON过程中,什么情况都可能遇到.遇到特殊的情况,不会怎么办?肯定不是设计的问题,一定是你的姿势不对. 有这样一种JSON需要解析: { "b3444533f6544&quo ...

  7. bootstrap-multiselect.js如何动态更新select里的数据

    在使用jQuery的bootstrap-multiselect插件时可能会遇到一个问题 就是想要动态的去更新select里的数据 比如我们要使一个id=select的选择框实现多选 那么先用ajax获 ...

  8. java基础之集合框架--使用ArrayList类动态 存储数据

    一.ArrayList是List接口下的一个实现类,实现了长度可变的.连续的数组:拥有数组的特性. 遵循了LIst的规则:不唯一的.有序的. 如果没有增加泛型的话,集合中可以添加任何类型的数据. 使用 ...

  9. [Java] JSP笔记 - Filter 过滤器

    一.什么是Web过滤器 Servlet API 很久以前就已成为企业应用开发的基石,而 Servlet 过滤器则是对 J2EE 家族的相对较新的补充. Servlet 过滤器是可插入的 Web 组件, ...

随机推荐

  1. js返回当前时间的毫秒数

    Date.now(); +new Date(); new Date().getTime();

  2. Linux Syslog

    http://blog.chinaunix.net/uid-677314-id-164215.html http://blog.chinaunix.net/uid-24708340-id-397132 ...

  3. svn常见问题汇总

    has no ancestry information 经查,由于project/,01Dev/的权限被关闭了,把当前文件夹父目录(project/,01Dev/) 下的 .svn/ 目录删除就好了.

  4. DTW-js版

    最近想试试语音识别,然后看到了DTW这个算法 主要参考:http://www.cnblogs.com/rockyf/articles/4519352.html function dtw(arr1, a ...

  5. KVC在定义Model类中的妙用

    @我们应用程序使用MVC架构的话,对于处理数据类,我们会单独的定义Model类,在里面为要展示的属性进行初始化赋值,一般採用的方法是通过定义相应的属性,挨个赋值.如今我要介绍的就是通过KVC,key- ...

  6. 【每天一个Linux命令】14. Linux中locate命令的用法

    命令用途 locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案. 其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了. ...

  7. 实现Android语音识别服务接口 RecognitionService的方法

    之前的一篇文章介绍过SpeechRecognizer类,该类能够作为对外的一个接口,并通过Intent传递一个ComponentName获取可支持语音识别的功能的服务,一般的用户手机中假设安装了语音识 ...

  8. win10安装数据库:[INS-13001]

    升级win10系统之后,需要重新安装Oracle,因为在安装Oralce11g时,使用64位的会出现各种不兼容问题,我每次安装都是使用32位的数据库. 在安装时点击setup.exe之后,出现了:[I ...

  9. NeatUpload上传控件在asp.net中的使用

    1.先导包,Brettle.Web.NeatUpload.dll导进web层中,再添加到vs控件中. 2.把NeatUpload文件夹放到根目录下. 3.直接拉要用到的控件到页面上,在使用 <U ...

  10. XenDesktop 5 PowerShell SDK Primer – Part 2 – Creating Hypervisor Connections and Hosts

    One of the new changes that you will see in XenDesktop 5 is the configuration of hypervisor connecti ...