以下为自己总结的一点经验,简单的介绍一下方法,如发现有误,请帮忙指正,谢谢。

一,首先定义调用据库。

<%
dim objconn,objconnstr
set objconn=server.createobject("adodb.connection")
objconnstr="provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../demo/database.mdb")
objconn.open objconnstr
%>

也可以直接写在一个页面中,然后进行调用 ,调用方法:<!--#include file="conn.asp"-->

二,定义样式表并调用。

调用方法:<link href="css/main.css" rel="stylesheet" type="text/css" />

三,Body页面区域添加导航。

/*定义对应字段,取回浏览器中的值,方便套用css样式表,即当前打开的项目菜单会高亮显示*/

<%dim protypeid,ModelID
protypeid=request.QueryString("protypeid")
if protypeid="" or isnumeric(protypeid)=false then
protypeid=
end if
ModelID=request.QueryString("ModelID")
if ModelID="" or isnumeric(ModelID)=false then
ModelID=
end if
%>

导航内容:

/*定义菜单DIV,控制位置*/
<div id="content_left">
<ul id="subnavi"> /*定义并调用产品类型数据库*/
<%dim rsm,sqlm
set rsm=server.CreateObject("adodb.recordset")
sqlm="select * from robottype where isdel<>true order by sort desc,protypeid"
rsm.open sqlm,objconn,,
if not rsm.eof then
do while not rsm.eof
/*判断protypeid对应的值是否与现在浏览器打开的相同,如果相同则套用样式subnavi_akt_2(只是为了高亮显示当前打开的导航项,不需要可以去掉该判断)*/
style1="subnavi_akt"
if cstr(rsp("protypeid"))=cstr(protypeid) then
style2="subnavi_akt_2"
end if
%>
/*展示产品类别菜单*/
<li class="<%=style1%>"><a href="proseries.asp?Mainid=<%=rsm("MainID")%>&protypeid=<%=rsm("protypeid")%>" title="<%=rsm("protypename")%>"><%=rsm("protypename")%></a>
/*展示产品类别菜单*/
<ul> /*定义并调用产品型号数据库*/
<%dim rsp,sqlp
set rsp=server.CreateObject("adodb.recordset")
sqlp="select * from robot_model where protypeid="&promain&" and isdel<>true order by sort desc,ModelId"
rsp.open sqlp,objconn,,
if not rsp.eof then
do while not rsp.eof
/*判断ModelID(高亮显示当前打开的导航项,不需要可以去掉该判断)*/
style2="subnavi_normal_2"
if cstr(rsp("ModelID"))=cstr(ModelID) then
style2="subnavi_akt_2"
end if
%> /*展示产品菜单导航*/
<li class="<%=style2%>"><a href="promodel.asp?protypeid=<%=rsm("protypeid")%>&ModelID=<%=rsp("ModelId")%>" title="<%=rsp("ModelName")%>"><%=rsp("ModelName")%></a>
/*展示产品菜单导航*/
/*进行产品型号的循环,即自动列出对应品牌下的产品型号*/
<%rsp.movenext
loop
rsp.close()
set rsp=nothing
end if%>
/*产品型号循环结束*/
</ul>
</li>
/*进行产品类别的循环,即自动列出对应品牌下的产品型号*/
<%rsm.movenext
loop
rsm.close()
set rsm=nothing
end if
%>
/*产品类别循环结束*/
</ul>
</div>

-完-

实现的效果如下:

By:Colin

转载请注明原文地址及作者,谢谢合作。

ASP页面-自动取回数据库中的值生成导航。的更多相关文章

  1. JS中获取数据库中的值

    在本次项目中,遇到很多问题,经过努力,都逐步得到解决.静下心来,做一个记录,以供以后学习. 在项目中遇到一个问题,需要在JS中读取数据库中的值,然后再把值返回到页面中,解决方案如下:使用Ajax方法来 ...

  2. DataGridView设置不自动显示数据库中未绑定的列

    项目中将从数据库查出来的数据绑定到DataGridView,但是不想显示所有的字段.此功能可以通过sql语句控制查出来的字段数目,但是DataGridView有属性可以控制不显示未绑定的数据,从UI层 ...

  3. 调用save()方法,页面显示保存成功,但是数据库中没有值的原因

    在DAO层调用save()方法,页面上显示成功,但是在数据库中查找时发现数据没有保存到数据库中的原因可能是: 1.Service层中是否在调用DAO层中的save()方法之前添加注解@Transact ...

  4. Ext.net中Combobox如何绑定数据库中的值-通用方法

    今天在项目中再次碰到了问题,就是Combobox中的值如果是直接绑定很简单.简单添加项就行了.代码如下: <ext:ComboBox ID=" /> </Items> ...

  5. 在jsp页面动态添加数据库中的内容

    工具:myeclipse+oracle11g 1.首先新建一个jsp页面. 2.在src目录下新建实体类User.java 3.创建BaseDao用来链接数据库 4.在pl/sql中创建存储过程 5. ...

  6. 如何使用jmeter连接数据库并提取数据库中的值作为参数,与响应信息中提取的值进行比较

    思路: 连接数据库 获取数据库返回的数据 获取接口返回的数据 两者返回数据进行对比验证 连接数据库 1.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要 ...

  7. s验证数据库中字段值是否重复

    daoImpl: public String isVipCode(String vipcode) { String sql = "from FfzjUserEntity where vip_ ...

  8. [转]asp.net mvc 从数据库中读取图片

    本文转自:http://www.cnblogs.com/mayt/archive/2010/05/20/1740358.html 首先是创建一个类,继承于ActionResult,记住要引用Syste ...

  9. asp.net mvc 从数据库中读取图片的实现代码

    首先是创建一个类,继承于ActionResult,记住要引用System.Web.Mvc命名空间,如下: public class ImageResult : ActionResult { publi ...

随机推荐

  1. 洛谷P1808 单词分类

    题目描述 Oliver为了学好英语决定苦背单词,但很快他发现要直接记住杂乱无章的单词非常困难,他决定对单词进行分类. 两个单词可以分为一类当且仅当组成这两个单词的各个字母的数量均相等. 例如“AABA ...

  2. ApsCMS AspCms_SettingFun.asp、AspCms-qqkfFun.asp、AspCms_Slide.asp、AspCms_StyleFun.asp、login.asp、AspCms_CommonFun.asp Vul

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 AspCMS管理系统有较多漏洞,涉及到SQL注入.密码泄漏.后台写SHE ...

  3. 用python虚拟串口

    在linux下调试串口程序,无奈下面的硬件还没到位,所以,想着自己模拟一个串口用用.试了下下面这段代码: #!/usr/bin/env python #coding=utf-8 import pty ...

  4. Markdown编辑器简单总结

    字体大小: #1 ##2 添加链接: 文字链接 [blog](http://yalantis.com/blog/how_we_created_tab_bar_animation_for_ios/?ut ...

  5. Java过滤器与SpringMVC拦截器之间的关系与区别

    今天学习和认识了一下,过滤器和SpringMVC的拦截器的区别,学到了不少的东西,以前一直以为拦截器就是过滤器实现的,现在想想还真是一种错误啊,而且看的比较粗浅,没有一个全局而又细致的认识,由于已至深 ...

  6. SQLite遇到的关于x64、x86问题

    初次使用SQLite遇到了莫名其妙的问题: 未能加载文件或程序集“System.Data.SQLite, Version=1.0.92.0, Culture=neutral, PublicKeyTok ...

  7. Google的Java开发规范

    长期以来,Google一直有针对各种语言的规范,例如C++, Python等等.惟独对于Java语言,Google一直没有给出相应的规范(传说中是因为Google Java首席构架师Joshua Bl ...

  8. HDU 4768 Flyer(二分)

    题目链接: 传送门 Flyer Time Limit: 1000MS     Memory Limit: 32768 K Description The new semester begins! Di ...

  9. CTO、技术总监、首席架构师的区别

    2016年11月30日13:22:26[转] CTO.技术总监.首席架构师的区别 提升自已的能力,比如专业技术,行业发展趋势,技术发展趋势,协调能力,组织能力,管理能力等[技术总监] 需要从技术总监和 ...

  10. 无法启动此程序,因为计算机中丢失MSVCP110.dll

    安装Visual C++ Redistributable for Visual Studio 2012 有arm.x86.x64有三个版本. 如果应用程序为debug版本而不是release版本,可能 ...