flash和asp分页的一点心得与flash脚本

所属分类: 网络编程 / ASP编程 阅读数: 1748
收藏 0 赞 0 分享
看了这个的一些帖子,学到了很多东西,现在和大家一起分享 
  flash现在只是一个显示的功能,过程中看了一些别人的东西,觉得分页似乎有很简单的实现方式.基本上都是用xml传送的.显示用 list 组件和 datagrid 都可以,这里我用的是动态文本,因为觉得组件用的太麻烦了.所以用了蠢办法,没办法,找不到更好的~~~下面代码中的 list[..]就是动态文本的名趁,一次显示15条

//显示程序如下: 

//桢名称 "list" 
stop(); 
var logList = new XML(); 
var logroot; 
var page:Number; //当前页 
var Tpage:Number; //保存总页 
var Tnum:Number; //总日志数 
var logname:String; //日志分类名称 
var temp; 
var i:Number; 

//这里我用一个数组储存了对应的id号,如果用组件就不用这么麻烦了 
var ids = new Array(15); 

//两个按钮,用来翻页 
bn_u.enabled = false; 
bn_d.enabled = false; 
if (page == null or page<1) { 
page = 1; 

//------------------------------ 
//清除函数; 
function myclear() { 
for (i=1; i<16; i++) { 
ids[i-1] = 0; 
list["lbn"+i]._visible = false; 
list["ltitle"+i].text = ""; 
list["lauthor"+i] = ""; 
list["ltime"+i] = ""; 


//-------------------------------------- 
//-------------------------------------- 
myclear(); 
pageInfo.text = "正在读取数据..."; 
logList.ignoreWhite = true; 
logList.load("Tree_list.asp?log_cat="+cat_id+"&page="+page); 
//------------------------------------------------ 
//get数据函数 
function logFunc(e) { 
if (e) { 
logroot = logList.firstChild; 
logname = logroot.attributes.logname; 
Tpage = logroot.attributes.Tpage; 
Tnum = logroot.attributes.Tnum; 
temp = logroot.firstChild; 
list.ltitle1.text = Ftitle(temp.firstChild.nodeValue, 22); 
list.lauthor1 = temp.attributes.author; 
list.ltime1 = temp.attributes.Addtime; 
ids[0] = temp.attributes.id; 
i = 1; 
list.lbn1._visible = true; 
//循环读取节点 
while (temp.nextSibling != null) { 
temp = temp.nextSibling; 
i++; 
//如果是用别的方式显示,只需要改一下就可以了 
ids[i-1] = temp.attributes.id; 
list["lbn"+i]._visible = true; 
list["ltitle"+i].text = Ftitle(temp.firstChild.nodeValue, 22); 
list["lauthor"+i] = temp.attributes.author; 
list["ltime"+i] = temp.attributes.Addtime; 

pageInfo.text = logname+"共有日志"+Tnum+"篇 共"+Tpage+"页 当前是第"+page+"页 "+"15/页"; 
bn_u.enabled = true; 
bn_d.enabled = true; 
} else { 
pageInfo.text = "当前没有日志。"; 
list.ltitle1.text = "读取数据出错,请联系管理员!"; 



//一个自定义的格式标题的函数,怕标题太长 
function Ftitle(s, n) { 
if (length(s)>n) { 
s = s.substring(0, n-1)+"..."; 

return s; 

logList.onLoad = logFunc; 
//------------------------------------- 
//按钮动作 
Bn_up = new Object(); 
//按钮事件,判断页面大小是否超过值 
Bn_up.click = function(evt) { 
if (page>1) { 
_root.page--; 
gotoAndPlay("cycle"); 
} else { 
stop(); 

}; 
Bn_d = new Object(); 
Bn_d.click = function(evt) { 
if (page<Tpage) { 
_root.page++; 
gotoAndPlay("cycle"); 
} else { 
stop(); 

}; 
bn_u.addEventListener("click", Bn_up); 
bn_d.addEventListener("click", Bn_d); 

桢"cycle"只有一个话: 
gotoAndPlay("list"); 
//形成一个简单的循环 

Tree_list.asp: 
//log 是我的日志表 ,log_cat是分类表 

  下面的asp很清楚了 

<?xml version="1.0" encoding="gb2312"?> 
<% 
Response.ContentType = "text/xml" 
Response.CacheControl = "no-cache" 
Response.AddHeader "Pragma", "no-cache" 
Response.Expires = 0 
dim log_cat,page,pageSize,Tnum,Tpage,log_name 
page=TreeRequest("page",1) 
log_cat=TreeRequest("log_cat",1) 
pageSize=15 
call Tree_rs 
if log_cat=0 or log_cat="" then 
sql="select * from log order by written_time DESC,log_ID DESC" 
else 
sql="select * from log,log_cat where log.cat_id=log_cat.ID and cat_id="&log_cat&" order by written_time DESC,log_ID DESC" 
End if 
rs.open sql,conn,1,1 
rs.PageSize=pageSize 
Tnum=rs.RecordCount 
Tpage=Int(Tnum/pageSize*-1)*-1 
if page="" then page=1 
if Tnum<>0 then rs.AbsolutePage=page 
if log_cat=0 or log_cat="" then 
log_name="[全部分类]" 
else 
log_name="["&rs("cat_name")&"]" 
End if 
'以下输出xml 
'------------------------------------------------ 
response.write("<Tree logname='"&log_name&"' Tnum='"&Tnum&"' Tpage='"&Tpage&"'>") 
if rs.eof then 
rs.close 
else 
do while not rs.eof and pageSize>0 
response.write("<Trees author='"&rs("log_author")&"' Addtime='"&rs("written_time")&"' id='"&rs("log_ID")&"'>") 
response.write("<![CDATA["&rs("log_tittle")&"]]></Trees>") 
pageSize=pageSize-1 
rs.movenext 
loop 
rs.close 
End if 
//关闭rs 
call Tree_rsclose 
call Tree_conclose 
response.write("</Tree>") 
%>
更多精彩内容其他人还在看

asp知识整理笔记4(问答模式)

这是关于asp知识整理的最后一份笔记,希望大家仔细阅读。
收藏 0 赞 0 分享

ASP基础知识VBScript基本元素讲解

这篇文章主要介绍了ASP基础知识VBScript基本元素的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP编码和解码函数详解

这篇文章主要介绍了ASP编码和解码函数的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP显示页面执行时间的方法

这篇文章主要介绍了ASP显示页面执行时间的方法,在本地测试一下输出页面需要多少时间,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP基础入门第一篇(ASP技术简介)

本文将以 Active Server Pages 为中心,向你全面展示制作动态商业网站的步骤和技巧并通过大量的实例,让你在不断的理论和实践之中笑傲“网络”……
收藏 0 赞 0 分享

ASP基础入门第二篇(ASP基础知识)

这篇文章是ASP基础入门第二篇,第一篇展示了ASP动态网站设计的一些最基本的方法,相信通过实践各位对 ASP 已经有了最基本的了解,本文将进一步介绍ASP动态网站的一些基本技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP基础入门第三篇(ASP脚本基础)

通过前两篇的学习,相信各位已经对 ASP 的动态网站设计有了一个基本的概念和整体的印象。从本篇开始作者将从脚本语言的使用着手,由浅入深地带领大家探索 ASP 动态网站设计的真正奥秘。
收藏 0 赞 0 分享

ASP基础入门第四篇(脚本变量、函数、过程和条件语句)

大家在学习了脚本语言 VBScript 的变量、常量和过程的基本概念后,本期将继续向各位介绍 VBScript 的函数和语法。
收藏 0 赞 0 分享

ASP基础入门第五篇(ASP脚本循环语句)

在本文上两篇中,我们学习了脚本语言 VBScript 的变量、函数、过程和条件语句,本篇将继续给大家介绍 VBScipt 的循环语句,并对脚本语言在 ASP 中的应用加以总结。  
收藏 0 赞 0 分享

ASP基础入门第六篇(ASP内建对象Request)

从本篇开始作者从 ASP 内建对象着手,为大家详细剖析 ASP 的六个内建对象和各种组件的特性和方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多