动态网站制作指南



当前位置 > 网站建设学院 > 网络编程 > ASP技巧 Rss
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket

在ASP中使用智岛网格控件全过程


发表日期:2003-12-30


    智岛网格控件作为数据的表示层,可以非常方便的进行货币样式、人民币大小写、中文大小写、各种逻辑样式、百分比样式、千分位分割等样式设置;可以冻结、锁定行列、对输入数据进行验证;可对字段设置公式,方便快捷地统计、汇总数据。智岛网格控件以其丰富多样的表现形式、简单易用的操作赢得了广大软件开发人员的一致好评。下面和大家分享一下智岛网格控件在asp中的应用心得:

图1 样式设置

图2 图片管理

图3 多层标题

图4 汇总模式

图5 冻结锁定

图6 合并模式



一、注册智岛网格控件

下载智岛网格控件(其文件名为OGrid.ocx)后,按照如下方法注册控件:

点击“开始”→“运行”;在运行对话框中输入以下命令:
regsvr32 < OGrid.ocx文件的绝对路径>  注册智岛网格控件控件
regsvr32 /u < OGrid.ocx文件的绝对路径> 解除智岛网格控件的注册

二、在页面中添加智岛网格控件

在页面中加入以下代码,即可插入智岛网格控件:

<object classid="clsid:79B00E6B-6110-46AE-891C-97773022C958" width="0" height="0" id="OGrid" CODEBASE="http://www.oaPRo.com/ostarocx/download/OGrid.ocx"></object>

其中:
width和height:指控件的显示宽度和高度;
id:指控件对象的名称,通过该名称实现对控件的操作;
CODEBASE:指没有安装智岛网格控件的客户端运行该页面时自动下载安装该控件的刂贰?lt;/P>

三、用智岛网格控件表现xml格式数据

1. XML文档格式

智岛网格控件采用XML文档作为数据存储交换格式,下面是一份XML文档格式:

<?xml version="1.0" encoding="GB2312"?>
<Table>
   <TableInfo><!--表信息-->
      <TableName>人事表</TableName><!--数据表名称-->
      <FieldInfoArray>
         <FieldInfo><!--记录字段信息的XML-->
            <FieldName>姓名</FieldName><!--字段名称-->
            <DataType>10</DataType><!--字段数据类型3:逻辑型7:数值型10:字符型12:备注型23:日期型-->
            <CellType>0</CellType><!--表元类型0:文本框,1:组合框,2:检验框,3:日期时间,7:人民币小写栏金额控件-->
         </FieldInfo> 
         ...
     </FieldInfoArray>
   </TableInfo>

   <Rows><!--多行数据-->
     <Row><!--单行数据-->
       <name>张三</name>
       <sex>男</sex>
       ...
     </Row>
     ...
   </Rows>
</Table>

2. 代码实现

通过以下语句通知智岛网格控件打开XML文档:

OGrid.OpenTableXML("")

其中引号内XML文档的绝对路径,例如:
http://www.oapro.com/ostarocx/sample/OGrid/xml/样式设置.xml
或者
C:\样式设置.xml

四、用智岛网格控件表现来自于数据库的数据

1. XML文档格式

智岛网格控件采用XML文档作为交换格式,但更多的数据源是数据库,如何表现来自于数据库的数据呢?我们可以将数据库的数据动态转为XML格式。以下代码实现了将一access数据库中指定数据表的内容转为XML文档格式。您可将代码中db.mdb文件换成您自己的数据库名称。指定的数据表名称来自于传递到该文件的参数值:Table_name。

<%
dim sql,rs
dim Table_name
<!--取得数据表名称-->
Table_name=request.QueryString("Table_name")
Set rs= Server.CreateObject("ADODB.Recordset") 
Const adSchemaTables = 20
adSchemaColumns = 4
strConn="DBQ="+server.mappath("db.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.open strConn
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
Set rsttable = oConn.OpenSchema(adSchemaTables)
i=0
%><?xml version="1.0" encoding="gb2312"?>
<Table>
<TableInfo>
<TableName><%=Table_name%></TableName>
<FieldInfoArray>
<%
//生成XML文件头
Do Until rstSchema.EOF
if rstSchema("Table_name") = Table_name then
if rstschema("column_Name")<>"ORowInfo" or rstschema("column_Name")<>"osysMachineID" then
%> <FieldInfo>
<FieldName><%=rstschema("column_Name")%></FieldName> <ColName><%=rstschema("column_Name")%></ColName>
<%select case rstschema("data_type")
case "130"
if rstschema("CHARACTER_MAXIMUM_LENGTH") = 1073741823 then%> <DataType>12</DataType>
<CellType>0</CellType>
<%else%> <DataType>10</DataType>
<CellType>0</CellType>
<%end if
case 135%> <DataType>23</DataType>
<CellType>3</CellType>
<%case 3%> <DataType>7</DataType>
<CellType>0</CellType>
<%case 11%> <DataType>3</DataType>
<CellType>2</CellType>
<%case 131%> <DataType>10</DataType>
<CellType>0</CellType>
<%case 5%> <DataType>7</DataType>
<CellType>0</CellType>
<%case else%> <DataType>10</DataType>
<CellType>0</CellType>
<%end select%> </FieldInfo>
<%end if
end if
rstSchema.MoveNextLoop
%> </FieldInfoArray>
</TableInfo>
<Rows>
//生成XML文件体
<%
sql="select * from "&Table_name
rs.open sql,strConn,1,1
Do while Not rs.eof
%> <Row>
<%
for k=0 to rs.fields.count-1
if rs(k).name<>"ORowInfo" or rs(k).name<>"osysMachineID" then
%> <<%=rs(k).name%>><%=rs(k)%></<%=rs(k).name%>>
<%
end if
next
%> </Row>
<%
rs.movenext
loop
rs.close
%> </Rows>
</Table>

2. 代码实现

通过以下语句通知智岛网格控件打开XML文档:

OGrid.SetTableXML(OGrid.HttpGet("http://www.oapro.com/mdb2xml.asp","Table_name=<%=TABLE_NAME%>"))

其中方法HttpGet有二个参数,第一个参数为我们上面介绍的实现数据库转换XML格式的网页地址,一定要为网址格式,不能用相对或绝对路径(因为目前该方法尚不支持),第二个参数为传递到该文件的参数,这里我们传递的是数据表名称:Table_name。

五、保存对数据的修改

在网格控件中可以新增、删除记录以及修改记录内容,如何使这些修改保存到数据源中去?智岛网格控件提供了三个这方面的事件:

1. 新增记录:EventSQLInsertRecord(strTableName,strSQL)
2. 删除记录:EventSQLDeleteRecord(strTableName,strSQL)
3. 修改记录:EventSQLUpdateRecord(strTableName,strSQL)
其中:
strTableName为产生事件的数据表名称;
strSQL为执行事件的SQL语句。

这二个参数由智岛网格控件提供给我们,供我们调用。

我们可通过脚本实现对事件的触发,以下是一范例代码:

<SCRipT FOR="OGrid" EVENT="EventSQLInsertRecord(strTableName,strSQL)" LANGUAGE="javaScript" >
OGrid.HttpGet("http://www.oapro.com/updata.asp","sql="+strSQL);
</SCRIPT>

以上代码实现了网格控件的记录发生修改时,便调用updata.asp文件实现对数据库相关内容进行修改。updata.asp文件内容如下:

<%@language=vbscript codepage=936 %>
<%
dim sql
sql=request.QueryString("sql")
response.write sql
strConn="DBQ="+server.mappath("db.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.open strConn
oConn.Execute(sql)
response.write sql
%>

六、范例

上面文章完整地介绍了智岛网格控件在ASP中的使用全过程,也许一个编辑成型的范例更具有说服力。那么就请领略这份鲜活的感觉吧:http://www.oapro.com/ostarocx/sample/ogrid_f/default.asp

关注此文的读者还看过:
·2012-5-21 15:58:13 ASP常用函数:GetRsRows()
·2012-5-21 15:56:19 在ASP中判断SQL语句是否执行成功
·2012-5-21 15:56:13 输出带日期格式的随机数.asp
·2012-5-21 15:55:46 检测IP地址是否真正合法的函数
·2012-5-21 15:55:34 一个BBS的源代码(五)
·2012-5-21 15:55:13 ASP中五种连接数据库的方法
·2012-5-21 15:55:12 将半角"转换为中文"的函数
·2012-5-21 15:54:44 关于ASP中堆栈溢出错误的解决
·2012-5-21 15:54:44 如何判断conn.Execute成功 或失败?
站长推荐 PS笔刷下载 在线翻译 系统进程 广告代码
  发表评论
姓 名: 验证码:
内 容:
教程搜索服务
ASP源码推荐
·25175 IP地址归属地查询程序 v1
·仿无忧搜索小偷
·彩票网站管理发布程序
·在线报名系统通用版2006
·LionWick NetWork Station v1.0
·终点小说连载系统元旦特别版(全
·九酷WEB空间管理系统 v7.0
·信息超市 v1.0
·小妖在线投票系统 v4.0 beta 5
·中国农产品网 v1.0 Access生成h
·搜趣唠叨(仿饭否之简单网络版)
·简约论坛 v3.4
项目外包信息
·汽车配件网站制作 50000元
·整站SEO优化
·课件门户网程序
·求长期合作网站设计制作高手
·公司网站重新改版 8000元
·asp企业网站小改动
·网站flash片头
·文化传播公司网站设计稿
·UI界面设计
·产品外观改版设计 15000元
·照明灯具网站设计 10000元
·求长期合作网站设计制作高手
·做B2C网站 20000元
·Android或QT软硬件平台设计(工
·网站首页FLASH
发布信息 浏览信息
邮件订阅服务
输入你的邮件地址,你将不会错过任何关于<ASP技巧>的内容


网络编程文章分类
ASP教程
ASP实例
ASP技巧
ASP文摘
PHP教程
PHP技巧
PHP实例
PHP文摘
JSP教程
JSP技巧
JSP实例
JSP文摘
ASP.NET教程
ASP.NET技巧
ASP.NET实例
ASP.NET应用
xml教程
xsl教程
xml技巧
C#教程
C#应用
Delphi教程
Perl教程
Shell教程
Ajax教程
Visual Basic教程
Java教程
J2EE/J2ME教程
C/C++教程
移动解决方案
移动短信技术
移动行业动态
软件工程
WordPress
Android开发
站长工具:Google PR查询|Alexa排名查询|网站速度测试|CSS在线编辑器|OPEN参数生成器|弹出式窗口代码产生器|密码登录生成器|在线按钮生成器|Meta标签生成器|邮箱图标在线生成|多色彩特效字代码生成器|网页代码调试器|在线FTP登陆|Flash取色器|配色代码对照表|配色辞典|CSS生成器|CSS在线压缩|广告代码|框架网页代码生成器|js/vbs加密|md5加密|进制转换|UTF-8 转换工具|在线调色板|Html转换js|Html转换asp|Html转换php|Html转换perl
实用工具:汉字翻译拼音|拼音字典|在线翻译|天气预报|火星文|在线网速测试|符号对照表|个税计算|理财工具|黄金价格|购房银行按揭利率计算|汇率查询|经典小工具|汉字简繁转换|普通单位换算|公制单位换算|生辰老黄历|国内电话区号|国家代码与域名缩写|文字加密解密|元素周期表|健康查询|世界时间|全国各地车牌查询|全国车辆交通违章查询|万年历|二十四节气|汉字横竖排版|手机号码查询|计算器|ip搜索|酒店预订|机票预订
广告刊登 | 版权声明 | 联系我们 | 加入收藏 | RSS订阅
Copyright © 2000-2012 www.knowsky.com All rights reserved | 沪ICP备05001343号