快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

面向对象的ASP编程之四-一些常用的函数

function RecordSetAsArray(rsADO,includeHeaderRow)
//把ado.recordset中的数据存放到一个数组里
//当includeHeaderRow为真时产生字段标题行,当为假时不产生
{
var rsArray = new Array;
var nFields = rsADO.Fields.Count;
if (nFields)
{
var n = 0;
if (includeHeaderRow)
{// include first row as header of field names
var rsRow = new Array(nFields);
for (var i=0; i < nFields; i++)
rsRow[i] = rsADO(i).name;
rsArray[n++] = rsRow;
}
if (!(rsADO.EOF&&rsADO.Bof))
rsADO.MoveFirst()
while (!rsADO.EOF)
{// add each record to array
rsRow = new Array(nFields);
for (var i=0; i < nFields; i++)
rsRow[i] = rsADO(i).value;
rsArray[n++] = rsRow;
rsADO.MoveNext();
}
}
return rsArray;
}

function RecordSetAsDSO(rsADO)
//把ado.recordset中的数据放到一个表格中,返回这个表格的html代码
{
var htmlDSO = \\\'\\\';
var nFields = rsADO.Fields.Count;
if (nFields)
{
var n = 0;
htmlDSO += \\\'<\\\' + \\\'table>n\\\';
while (!rsADO.EOF)
{// add each record to table
htmlDSO += \\\'<\\\' + \\\'tr>\\\';
for (var i=0; i < nFields; i++)
{
htmlDSO += \\\'<\\\' + \\\'td id=\\\' + rsADO(i).name + \\\'>\\\' + rsADO(i).value + \\\'<\\\' + \\\'/td>\\\';
}
htmlDSO += \\\'<\\\' + \\\'/tr>n\\\';
rsADO.MoveNext();
}
htmlDSO += \\\'<\\\' + \\\'/table>\\\';
}
return htmlDSO;
}

function RecordSetAsList(rsADO,field)
//把ado.recordset中的某个字段的数据放到数组中
{
var rsArray = new Array;
var nFields = rsADO.Fields.Count;
if (nFields)
{
var n = 0;
if (!(rsADO.EOF&&rsADO.Bof))
rsADO.MoveFirst()
while (!rsADO.EOF)
{// add each value of field into array
rsArray[n++] = rsADO(field).value;
rsADO.MoveNext();
}
}
return rsArray;
}

function RecordAsObject(rsADO,objectName)
//以对象的方法返回ado.recordset中的一条记录
{
if (typeof(objectName) == \\\'undefined\\\')
objectName = \\\'RSObject\\\';
var strObject = \\\'function \\\' + objectName + \\\'() { \\\';
var nFields = rsADO.Fields.Count;
if (!rsADO.EOF)
{
var value = new String;
var propName = new String;
for (var i=0; i < nFields; i++)
{
propName = rsADO(i).name;
var c0 = propName.charAt(0);
if ((propName.indexOf(\\\' \\\') == -1) && ((c0 >= \\\'A\\\' && c0 <= \\\'Z\\\') || (c0 >= \\\'a\\\' && c0 <= \\\'z\\\')))
{// exclude fields that are invalid variable names
value = rsADO(i).value;
if (isNaN(parseFloat(value)))
strObject += \\\'this.\\\' + propName + \\\' = "\\\' + value + \\\'"; \\\';
else
strObject += \\\'this.\\\' + propName + \\\' = \\\' + value + \\\'; \\\';
}
}
}
strObject += \\\'}\\\';
eval(strObject);
return eval(\\\'new \\\' + objectName);
}



function RecordSetAsArray(rsADO,includeHeaderRow)
//把ado.recordset中的数据存放到一个数组里
//当includeHeaderRow为真时产生字段标题行,当为假时不产生
{
var rsArray = new Array;
var nFields = rsADO.Fields.Count;
if (nFields)
{
var n = 0;
if (includeHeaderRow)
{// include first row as header of field names
var rsRow = new Array(nFields);
for (var i=0; i < nFields; i++)
rsRow[i] = rsADO(i).name;
rsArray[n++] = rsRow;
}
if (!(rsADO.EOF&&rsADO.Bof))
rsADO.MoveFirst()
while (!rsADO.EOF)
{// add each record to array
rsRow = new Array(nFields);
for (var i=0; i < nFields; i++)
rsRow[i] = rsADO(i).value;
rsArray[n++] = rsRow;
rsADO.MoveNext();
}
}
return rsArray;
}

function RecordSetAsDSO(rsADO)
//把ado.recordset中的数据放到一个表格中,返回这个表格的html代码
{
var htmlDSO = \\\'\\\';
var nFields = rsADO.Fields.Count;
if (nFields)
{
var n = 0;
htmlDSO += \\\'<\\\' + \\\'table>n\\\';
while (!rsADO.EOF)
{// add each record to table
htmlDSO += \\\'<\\\' + \\\'tr>\\\';
for (var i=0; i < nFields; i++)
{
htmlDSO += \\\'<\\\' + \\\'td id=\\\' + rsADO(i).name + \\\'>\\\' + rsADO(i).value + \\\'<\\\' + \\\'/td>\\\';
}
htmlDSO += \\\'<\\\' + \\\'/tr>n\\\';
rsADO.MoveNext();
}
htmlDSO += \\\'<\\\' + \\\'/table>\\\';
}
return htmlDSO;
}

function RecordSetAsList(rsADO,field)
//把ado.recordset中的某个字段的数据放到数组中
{
var rsArray = new Array;
var nFields = rsADO.Fields.Count;
if (nFields)
{
var n = 0;
if (!(rsADO.EOF&&rsADO.Bof))
rsADO.MoveFirst()
while (!rsADO.EOF)
{// add each value of field into array
rsArray[n++] = rsADO(field).value;
rsADO.MoveNext();
}
}
return rsArray;
}

function RecordAsObject(rsADO,objectName)
//以对象的方法返回ado.recordset中的一条记录
{
if (typeof(objectName) == \\\'undefined\\\')
objectName = \\\'RSObject\\\';
var strObject = \\\'function \\\' + objectName + \\\'() { \\\';
var nFields = rsADO.Fields.Count;
if (!rsADO.EOF)
{
var value = new String;
var propName = new String;
for (var i=0; i < nFields; i++)
{
propName = rsADO(i).name;
var c0 = propName.charAt(0);
if ((propName.indexOf(\\\' \\\') == -1) && ((c0 >= \\\'A\\\' && c0 <= \\\'Z\\\') || (c0 >= \\\'a\\\' && c0 <= \\\'z\\\')))
{// exclude fields that are invalid variable names
value = rsADO(i).value;
if (isNaN(parseFloat(value)))
strObject += \\\'this.\\\' + propName + \\\' = "\\\' + value + \\\'"; \\\';
else
strObject += \\\'this.\\\' + propName + \\\' = \\\' + value + \\\'; \\\';
}
}
}
strObject += \\\'}\\\';
eval(strObject);
return eval(\\\'new \\\' + objectName);
}
注:此中的一些函数来源于MIcrosoft 的interdev中的Microsoft Scripting Library
返回类别: 教程
上一教程: VISUALINTERDEV6.0七种实现分页显示的方式
下一教程: 编码的风格和如何设置调试代码

您可以阅读与"面向对象的ASP编程之四-一些常用的函数"相关的教程:
· 面向对象的ASP编程之九-客户器端函数
· 面向对象的ASP编程之八-服务器端函数
· 面向对象的ASP编程之五-ADODB的类封装
· 面向对象的ASP编程之六-用于自动显示RECORDSET的表格
· ASP面向对象编程探讨及比较
    微笑服务 优质保证 索取样品