查询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;
}
}
分享到:
相关推荐
下拉菜单在网页设计和应用程序开发中是一种常见的交互元素,用于提供多个选择项,并通过点击主菜单项展开显示。在本资源包“下拉菜单集合”中,包含了多种类型的下拉菜单,包括二级和三级下拉菜单,这些设计通常用于...
jquery导航条滑动下拉菜单_滑动显示二级下拉菜单 jquery导航条滑动下拉菜单_滑动显示二级下拉菜单 jquery导航条滑动下拉菜单_滑动显示二级下拉菜单 jquery导航条滑动下拉菜单_滑动显示二级下拉菜单
### Wincc下拉菜单制作详解 #### 一、前言 在工业自动化领域,WinCC (Windows Control Center) 是一款非常流行的组态软件,广泛应用于各种监控与数据采集(SCADA)系统。本文将详细介绍如何在WinCC环境中创建下拉...
2. 对一级下拉菜单的每一个选项,使用IF函数或间接引用来动态生成二级下拉菜单的来源。假设一级菜单在A列,二级菜单在B列,对于单元格B2(对应A2的一级菜单),可以使用如下公式: `=IF(A2="销售部", "销售一部,...
2. **创建`QWidget`作为下拉菜单**:创建一个`QWidget`实例,并将其设置为隐藏,以便在需要时显示。 ```cpp QWidget *menuWidget = new QWidget(this); menuWidget->setHidden(true); ``` 3. **构建菜单结构**:在...
本篇将深入探讨如何利用jQuery实现一个竖向渐变显示的二级下拉菜单,以及其背后的原理和技术细节。 首先,jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画效果和Ajax交互等任务,使得开发者能更...
在本文中,将详细介绍如何使用Vue.js框架来实现一个带有过渡动画效果的下拉菜单功能。这个功能不仅适用于Web端,还包括对移动端的适配,并且还包含了一些额外的交互效果,比如点击下拉菜单之外的区域隐藏下拉菜单。 ...
在这个名为“超牛的AJAX下拉菜单”的资源中,我们可以看到一个适用于网页和BS(Browser/Server,浏览器/服务器)软件界面的下拉菜单解决方案。 下拉菜单是网页设计中常见的交互元素,常用于导航或选项选择。在本...
一个基本的二级下拉菜单通常由`<ul>`元素构建,其中包含一级菜单项`<li>`,每个一级菜单项内嵌套另一个`<ul>`来表示二级菜单。例如: ```html 一级菜单1 <li><a href="#">二级菜单1.1</a></li> <li><a href...
jQuery多级下拉菜单的核心在于利用CSS样式定义菜单结构,然后通过jQuery的事件监听和DOM操作来控制菜单的显示与隐藏。通常,这样的菜单由HTML的`<ul>`和`<li>`元素构成,通过嵌套实现多级结构。第一级菜单项是可见的...
下拉菜单通常与导航栏结合使用,当用户鼠标悬停在特定导航项上时,会显示一个包含更多选项的子菜单。实现下拉菜单的关键在于层叠(z-index)和定位。通过设置父元素(导航项)的`position`为`relative`,子元素...
在这个场景中,"asp 二级下拉菜单 二级菜单" 的目标是利用ASP技术实现一个可以展示网站栏目二级子菜单的下拉功能。 首先,我们来看看`main.asp`文件。这个文件很可能是页面的主要入口点,包含整个下拉菜单系统的...
这意味着你可以将下拉列表连接到一个数组或簇,数组中的每个元素对应一个菜单项。通过这种方式,你可以将数据结构与用户界面直接关联,使得用户的选择能够直接影响到程序的数据状态。 在实际应用中,下拉列表常用于...
JS(JavaScript)与CSS(层叠样式表)是创建动态、响应式下拉菜单的关键技术。本主题聚焦于利用这两者构建二级下拉菜单,以及如何扩展到三级甚至更多级的下拉菜单结构。 首先,让我们了解JS和CSS的基础知识。JS是一...
在网页设计中,下拉菜单是一个常见的元素,它能够有效地组织和展示大量链接,提高用户体验。本文将深入探讨如何使用JavaScript创建一个实用且响应式的下拉菜单。 首先,我们需要了解下拉菜单的基本结构。一个下拉...
在网页设计中,下拉菜单是一种常见的交互元素,它能够有效地组织和展示大量链接,提高用户体验。本教程将深入讲解如何使用Adobe Dreamweaver(简称DW)这一强大的网页设计工具来创建下拉菜单。DW以其直观的用户界面...
在Excel中创建二级联动下拉菜单是一项非常实用的功能,它能帮助用户在多个关联的数据列表中快速筛选和选择信息。这种交互式菜单可以提高工作效率,减少输入错误,并且使数据整理更加直观。以下是一个详细步骤的说明...
为每个主菜单项添加一个`<li>`,然后在需要下拉菜单的`<li>`中嵌套另一个`<ul>`。 3. **应用CSS样式**:在CSS面板中,为菜单和子菜单定义样式。设置颜色、字体、边距、背景和悬停效果等。关键样式包括`display:none...
本项目提供的"二级下拉菜单特效"旨在实现一种无过度效果、点击后即刻显示的二级导航功能,同时具有两列布局的可能性,以便适应不同的内容需求,并且设计简洁,方便后续的二次开发和修改。 首先,我们来探讨一下下拉...
本项目利用jQuery来创建一个动态的下拉菜单,用户可以通过鼠标经过或点击来触发下拉菜单的显示,从而提升网站的导航功能和用户体验。 首先,`index.html`是网页的主文件,它包含了页面的基本结构和引用的资源。在...