`
qmug
  • 浏览: 201559 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

查询2个表比较然后做下拉菜单显示

    博客分类:
  • JSP
阅读更多
查询2个表比较然后做下拉菜单显示




这段代码是在Main.jsp中用来查询地区的

<select name="Qarea">
<option value="">
全部
</option>
<c:forEach var="typeArea" items="${requestScope.typeArea}" >
<c:if test="${typeArea.ntId==requestScope.Qarea}">
<option value="${typeArea.ntName}" selected="selected">
<c:out value="${typeArea.ntName}"></c:out>
</option>
</c:if>
<c:if test="${typeArea.ntId!=requestScope.Qarea}">
<option value="${typeArea.ntName}">
<c:out value="${typeArea.ntName}"></c:out>
</option>
</c:if>
</c:forEach>
</select>


下面详细分析每句话的意思,每个值得获取。
第一句。其中items="${requestScope.typeArea}是从action中的select方法中取得的,然后给var="typeArea" 做变量。名字叫做typeArea

Select中的
List typeArea=this.getTellist().getQarea();

this.getTellist()是action中private TelListDAO tellist;  get/set方法得出来的。

getQarea()是TelListDAO 中的方法。

	public class TelListDAO extends BaseDAO {
/*
	 * 查询全部列表 han
	 * */
	public List getQarea(){
		String hql="from Nodetree where ntParentId=136";
		List typeList=this.hibernateHelper.query(hql);
		return typeList;
	}
}




BaseDAO 里面都是对Hibernate对象的增删该查的操作。

package com.et.dao.impl;
import com.et.bean.HibernateHelper;
public class BaseDAO {
	
	HibernateHelper hibernateHelper=null;
	
	/**
	 * @return the hibernateHelper
	 */
	public HibernateHelper getHibernateHelper() {
		return hibernateHelper;
	}
	
	/**
	 * @param hibernateHelper the hibernateHelper to set
	 */
	public void setHibernateHelper(HibernateHelper hibernateHelper) {
		this.hibernateHelper = hibernateHelper;
	}
    public void save(Object object) {
    	hibernateHelper.save(object);
    }
    public void update(Object object) {
    	hibernateHelper.update(object);
    }
    public void delete(Object object) {
    	hibernateHelper.delete(object);
    }
    public void attachDirty(Object object) {
    	hibernateHelper.saveOrUpdate(object);
    }
}


第二句
<c:if test="${typeArea.ntId==requestScope.Qarea}">
ntId Qarea这两个值是从两个表里面查询出来的。然后判断这两个值是否相等,如果相等
则执行
<option value="${typeArea.ntName}" selected="selected">
<c:out value="${typeArea.ntName}"></c:out>
</option>
选中{typeArea.ntName}这个值并输出显示出来。

中间插播option 的selected 的用法
http://www.dreamdu.com/xhtml/tag_option/
option 标签 -- 代表选择列表的一个选择项
option标签是成对出现的,以<option>开始,以</option>结束
属性:
Common -- 一般属性
label -- 说明选择项
value -- 说明选择项的值
selected -- 此选择项已经被选择
disabled -- 输入框无法获得焦点,无法选择,以灰色显示,在表单中不起任何作用
tabindex -- 使用"tab"键的遍历顺序


如果不相等
则执行
<c:if test="${typeArea.ntId!=requestScope.Qarea}">
<option value="${typeArea.ntName}">
<c:out value="${typeArea.ntName}"></c:out>
</option>
</c:if>

返回头在说typeArea.ntId==requestScope.Qarea 这2个值是怎么取得的

typeArea.ntId 的值 从items="${requestScope.typeArea}"取得的一个属性,也就是String hql="from Nodetree where ntParentId=136"; 这个对象的一个属性也就是表Nodetree 中的一个字段。

requestScope.Qarea的值 从action中
Pagination paginationGroup = this.getTellist().getTelList(tel,Qarea,currentPage);
注意要定义String Qarea=request.getParameter("Qarea");

同上
getTellist()是action中的
private TelListDAO tellist;  get/set 方法得到的。
getTelList 是

public class TelListDAO extends BaseDAO {
	/**
	 * 为了取得TelList表中的需要的字段,并做显示
	 */
	public Pagination getTelList(String tel,String area,Integer currentPage){
		String hql="from TelList as model where 1=1 ";
		if(tel!=null&&!"".equals(tel)){
			hql = hql +"and model.tel='"+tel+"'";
			System.out.println(tel);
		}
		if(area!=null&&!"".equals(area)){
			hql = hql +"and model.area='"+area+"'";
		}
		hql = hql +" order by model.tid desc";
		Pagination pagination =this.hibernateHelper.QueryAll(hql, currentPage, 12);
		return pagination;
	}
}


2
0
分享到:
评论

相关推荐

    下拉菜单集合(二级、三级下拉菜单)

    下拉菜单在网页设计和应用程序开发中是一种常见的交互元素,用于提供多个选择项,并通过点击主菜单项展开显示。在本资源包“下拉菜单集合”中,包含了多种类型的下拉菜单,包括二级和三级下拉菜单,这些设计通常用于...

    jquery导航条滑动下拉菜单_滑动显示二级下拉菜单

    jquery导航条滑动下拉菜单_滑动显示二级下拉菜单 jquery导航条滑动下拉菜单_滑动显示二级下拉菜单 jquery导航条滑动下拉菜单_滑动显示二级下拉菜单 jquery导航条滑动下拉菜单_滑动显示二级下拉菜单

    wincc 下拉菜单制作

    ### Wincc下拉菜单制作详解 #### 一、前言 在工业自动化领域,WinCC (Windows Control Center) 是一款非常流行的组态软件,广泛应用于各种监控与数据采集(SCADA)系统。本文将详细介绍如何在WinCC环境中创建下拉...

    二级下拉菜单的简单做法

    2. 对一级下拉菜单的每一个选项,使用IF函数或间接引用来动态生成二级下拉菜单的来源。假设一级菜单在A列,二级菜单在B列,对于单元格B2(对应A2的一级菜单),可以使用如下公式: `=IF(A2="销售部", "销售一部,...

    Qt简单方法实现下拉列表菜单

    2. **创建`QWidget`作为下拉菜单**:创建一个`QWidget`实例,并将其设置为隐藏,以便在需要时显示。 ```cpp QWidget *menuWidget = new QWidget(this); menuWidget-&gt;setHidden(true); ``` 3. **构建菜单结构**:在...

    jquery竖向渐变显示二级下拉菜单

    本篇将深入探讨如何利用jQuery实现一个竖向渐变显示的二级下拉菜单,以及其背后的原理和技术细节。 首先,jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画效果和Ajax交互等任务,使得开发者能更...

    vue实现带过渡效果的下拉菜单功能

    在本文中,将详细介绍如何使用Vue.js框架来实现一个带有过渡动画效果的下拉菜单功能。这个功能不仅适用于Web端,还包括对移动端的适配,并且还包含了一些额外的交互效果,比如点击下拉菜单之外的区域隐藏下拉菜单。 ...

    超牛的AJAX下拉菜单(调用即可用)

    在这个名为“超牛的AJAX下拉菜单”的资源中,我们可以看到一个适用于网页和BS(Browser/Server,浏览器/服务器)软件界面的下拉菜单解决方案。 下拉菜单是网页设计中常见的交互元素,常用于导航或选项选择。在本...

    jquery鼠标滑过显示二级下拉菜单代码

    一个基本的二级下拉菜单通常由`&lt;ul&gt;`元素构建,其中包含一级菜单项`&lt;li&gt;`,每个一级菜单项内嵌套另一个`&lt;ul&gt;`来表示二级菜单。例如: ```html 一级菜单1 &lt;li&gt;&lt;a href="#"&gt;二级菜单1.1&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href...

    jQuery多级下拉菜单支持多级下拉列表菜单.zip

    jQuery多级下拉菜单的核心在于利用CSS样式定义菜单结构,然后通过jQuery的事件监听和DOM操作来控制菜单的显示与隐藏。通常,这样的菜单由HTML的`&lt;ul&gt;`和`&lt;li&gt;`元素构成,通过嵌套实现多级结构。第一级菜单项是可见的...

    2个做CSS导航栏,下拉菜单的工具

    下拉菜单通常与导航栏结合使用,当用户鼠标悬停在特定导航项上时,会显示一个包含更多选项的子菜单。实现下拉菜单的关键在于层叠(z-index)和定位。通过设置父元素(导航项)的`position`为`relative`,子元素...

    asp 二级下拉菜单 二级菜单

    在这个场景中,"asp 二级下拉菜单 二级菜单" 的目标是利用ASP技术实现一个可以展示网站栏目二级子菜单的下拉功能。 首先,我们来看看`main.asp`文件。这个文件很可能是页面的主要入口点,包含整个下拉菜单系统的...

    LabVIEW实现下拉列表菜单

    这意味着你可以将下拉列表连接到一个数组或簇,数组中的每个元素对应一个菜单项。通过这种方式,你可以将数据结构与用户界面直接关联,使得用户的选择能够直接影响到程序的数据状态。 在实际应用中,下拉列表常用于...

    JS 二级下拉菜单。很漂亮,就是没实现三级下拉

    JS(JavaScript)与CSS(层叠样式表)是创建动态、响应式下拉菜单的关键技术。本主题聚焦于利用这两者构建二级下拉菜单,以及如何扩展到三级甚至更多级的下拉菜单结构。 首先,让我们了解JS和CSS的基础知识。JS是一...

    JavaScript做的下拉菜单

    在网页设计中,下拉菜单是一个常见的元素,它能够有效地组织和展示大量链接,提高用户体验。本文将深入探讨如何使用JavaScript创建一个实用且响应式的下拉菜单。 首先,我们需要了解下拉菜单的基本结构。一个下拉...

    用Dreamweaver制作下拉菜单

    在网页设计中,下拉菜单是一种常见的交互元素,它能够有效地组织和展示大量链接,提高用户体验。本教程将深入讲解如何使用Adobe Dreamweaver(简称DW)这一强大的网页设计工具来创建下拉菜单。DW以其直观的用户界面...

    excel二级联动下拉菜单怎么做

    在Excel中创建二级联动下拉菜单是一项非常实用的功能,它能帮助用户在多个关联的数据列表中快速筛选和选择信息。这种交互式菜单可以提高工作效率,减少输入错误,并且使数据整理更加直观。以下是一个详细步骤的说明...

    dreanweaver下拉菜单全攻略,下拉菜单互动

    为每个主菜单项添加一个`&lt;li&gt;`,然后在需要下拉菜单的`&lt;li&gt;`中嵌套另一个`&lt;ul&gt;`。 3. **应用CSS样式**:在CSS面板中,为菜单和子菜单定义样式。设置颜色、字体、边距、背景和悬停效果等。关键样式包括`display:none...

    二级下拉菜单特效

    本项目提供的"二级下拉菜单特效"旨在实现一种无过度效果、点击后即刻显示的二级导航功能,同时具有两列布局的可能性,以便适应不同的内容需求,并且设计简洁,方便后续的二次开发和修改。 首先,我们来探讨一下下拉...

    jquery制作的鼠标经过或者点击显示下拉菜单

    本项目利用jQuery来创建一个动态的下拉菜单,用户可以通过鼠标经过或点击来触发下拉菜单的显示,从而提升网站的导航功能和用户体验。 首先,`index.html`是网页的主文件,它包含了页面的基本结构和引用的资源。在...

Global site tag (gtag.js) - Google Analytics