最新更新 sitemap 网站制作设计本站搜索
网页设计
国外网站 韩国网站 个人主页 手提袋设计 CSS 网页特效 平面设计 网站设计 Flash CMS技巧 服装网站 php教程 photoshop 画册 服务器选用 数据库 Office
虚拟主机 域名注册 云主机 网页设计 客服QQ:8208442
当前位置:首页 > 编程开发 > asp教程

flash和asp分页的一点心得技巧

日期:11-16    来源:网页设计秀    作者:cnwebshow.com

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

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

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

//两个按钮,用来翻页 Vdk中国设计秀
bn_u.enabled = false; Vdk中国设计秀
bn_d.enabled = false; Vdk中国设计秀
if (page == null or page<1) { Vdk中国设计秀
page = 1; Vdk中国设计秀
} Vdk中国设计秀
//------------------------------ Vdk中国设计秀
//清除函数; Vdk中国设计秀
function myclear() { Vdk中国设计秀
for (i=1; i<16; i++) { Vdk中国设计秀
ids[i-1] = 0; Vdk中国设计秀
list["lbn"+i]._visible = false; Vdk中国设计秀
list["ltitle"+i].text = ""; Vdk中国设计秀
list["lauthor"+i] = ""; Vdk中国设计秀
list["ltime"+i] = ""; Vdk中国设计秀
} Vdk中国设计秀
} Vdk中国设计秀
//-------------------------------------- Vdk中国设计秀
//-------------------------------------- Vdk中国设计秀
myclear(); Vdk中国设计秀
pageInfo.text = "正在读取数据..."; Vdk中国设计秀
logList.ignoreWhite = true; Vdk中国设计秀
logList.load("Tree_list.asp?log_cat="+cat_id+"&page="+page); Vdk中国设计秀
//------------------------------------------------ Vdk中国设计秀
//get数据函数 Vdk中国设计秀
function logFunc(e) { Vdk中国设计秀
if (e) { Vdk中国设计秀
logroot = logList.firstChild; Vdk中国设计秀
logname = logroot.attributes.logname; Vdk中国设计秀
Tpage = logroot.attributes.Tpage; Vdk中国设计秀
Tnum = logroot.attributes.Tnum; Vdk中国设计秀
temp = logroot.firstChild; Vdk中国设计秀
list.ltitle1.text = Ftitle(temp.firstChild.nodeValue, 22); Vdk中国设计秀
list.lauthor1 = temp.attributes.author; Vdk中国设计秀
list.ltime1 = temp.attributes.Addtime; Vdk中国设计秀
ids[0] = temp.attributes.id; Vdk中国设计秀
i = 1; Vdk中国设计秀
list.lbn1._visible = true; Vdk中国设计秀
//循环读取节点 Vdk中国设计秀
while (temp.nextSibling != null) { Vdk中国设计秀
temp = temp.nextSibling; Vdk中国设计秀
i++; Vdk中国设计秀
//如果是用别的方式显示,只需要改一下就可以了 Vdk中国设计秀
ids[i-1] = temp.attributes.id; Vdk中国设计秀
list["lbn"+i]._visible = true; Vdk中国设计秀
list["ltitle"+i].text = Ftitle(temp.firstChild.nodeValue, 22); Vdk中国设计秀
list["lauthor"+i] = temp.attributes.author; Vdk中国设计秀
list["ltime"+i] = temp.attributes.Addtime; Vdk中国设计秀
} Vdk中国设计秀
pageInfo.text = logname+"共有日志"+Tnum+"篇 共"+Tpage+"页 当前是第"+page+"页 "+"15/页"; Vdk中国设计秀
bn_u.enabled = true; Vdk中国设计秀
bn_d.enabled = true; Vdk中国设计秀
} else { Vdk中国设计秀
pageInfo.text = "当前没有日志。"; Vdk中国设计秀
list.ltitle1.text = "读取数据出错,请联系管理员!"; Vdk中国设计秀
} Vdk中国设计秀
}Vdk中国设计秀

//一个自定义的格式标题的函数,怕标题太长 Vdk中国设计秀
function Ftitle(s, n) { Vdk中国设计秀
if (length(s)>n) { Vdk中国设计秀
s = s.substring(0, n-1)+"..."; Vdk中国设计秀
} Vdk中国设计秀
return s; Vdk中国设计秀
} Vdk中国设计秀
logList.onLoad = logFunc; Vdk中国设计秀
//------------------------------------- Vdk中国设计秀
//按钮动作 Vdk中国设计秀
Bn_up = new Object(); Vdk中国设计秀
//按钮事件,判断页面大小是否超过值 Vdk中国设计秀
Bn_up.click = function(evt) { Vdk中国设计秀
if (page>1) { Vdk中国设计秀
_root.page--; Vdk中国设计秀
gotoAndPlay("cycle"); Vdk中国设计秀
} else { Vdk中国设计秀
stop(); Vdk中国设计秀
} Vdk中国设计秀
}; Vdk中国设计秀
Bn_d = new Object(); Vdk中国设计秀
Bn_d.click = function(evt) { Vdk中国设计秀
if (page<Tpage) { Vdk中国设计秀
_root.page++; Vdk中国设计秀
gotoAndPlay("cycle"); Vdk中国设计秀
} else { Vdk中国设计秀
stop(); Vdk中国设计秀
} Vdk中国设计秀
}; Vdk中国设计秀
bn_u.addEventListener("click", Bn_up); Vdk中国设计秀
bn_d.addEventListener("click", Bn_d);Vdk中国设计秀

桢"cycle"只有一个话: Vdk中国设计秀
gotoAndPlay("list"); Vdk中国设计秀
//形成一个简单的循环Vdk中国设计秀

Tree_list.asp: Vdk中国设计秀
//log 是我的日志表 ,log_cat是分类表 Vdk中国设计秀
下面的asp很清楚了Vdk中国设计秀

<?xml version="1.0" encoding="gb2312"?> Vdk中国设计秀
<% Vdk中国设计秀
Response.ContentType = "text/xml" Vdk中国设计秀
Response.CacheControl = "no-cache" Vdk中国设计秀
Response.AddHeader "PRagma", "no-cache" Vdk中国设计秀
Response.Expires = 0 Vdk中国设计秀
dim log_cat,page,pageSize,Tnum,Tpage,log_name Vdk中国设计秀
page=TreeRequest("page",1) Vdk中国设计秀
log_cat=TreeRequest("log_cat",1) Vdk中国设计秀
pageSize=15 Vdk中国设计秀
call Tree_rs Vdk中国设计秀
if log_cat=0 or log_cat="" then Vdk中国设计秀
sql="select * from log order by written_time DESC,log_ID DESC" Vdk中国设计秀
else Vdk中国设计秀
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" Vdk中国设计秀
End if Vdk中国设计秀
rs.open sql,conn,1,1 Vdk中国设计秀
rs.PageSize=pageSize Vdk中国设计秀
Tnum=rs.RecordCount Vdk中国设计秀
Tpage=Int(Tnum/pageSize*-1)*-1 Vdk中国设计秀
if page="" then page=1 Vdk中国设计秀
if Tnum<>0 then rs.AbsolutePage=page Vdk中国设计秀
if log_cat=0 or log_cat="" then Vdk中国设计秀
log_name="[全部分类]" Vdk中国设计秀
else Vdk中国设计秀
log_name="["&rs("cat_name")&"]" Vdk中国设计秀
End if Vdk中国设计秀
’以下输出xml Vdk中国设计秀
’------------------------------------------------ Vdk中国设计秀
response.write("<Tree logname=’"&log_name&"’ Tnum=’"&Tnum&"’ Tpage=’"&Tpage&"’>") Vdk中国设计秀
if rs.eof then Vdk中国设计秀
rs.close Vdk中国设计秀
else Vdk中国设计秀
do while not rs.eof and pageSize>0 Vdk中国设计秀
response.write("<Trees author=’"&rs("log_author")&"’ Addtime=’"&rs("written_time")&"’ id=’"&rs("log_ID")&"’>") Vdk中国设计秀
response.write("<![CDATA["&rs("log_tittle")&"]]></Trees>") Vdk中国设计秀
pageSize=pageSize-1 Vdk中国设计秀
rs.movenext Vdk中国设计秀
loop Vdk中国设计秀
rs.close Vdk中国设计秀
End if Vdk中国设计秀
//关闭rs Vdk中国设计秀
call Tree_rsclose Vdk中国设计秀
call Tree_conclose Vdk中国设计秀
response.write("</Tree>") Vdk中国设计秀
%>Vdk中国设计秀

代码好象很乱,希望能对正在做这个的朋友有点帮助,如果以上有bug,请指教Vdk中国设计秀

出处:www.flashbank.cnVdk中国设计秀

本文引用地址:/bc/article_46495.html
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明