|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。分页|心得 看了这个的一些帖子,学到了良多器材,如今和人人一同分享
Flash如今只是一个显现的功效,过程当中看了一些他人的器材,以为分页仿佛有很复杂的完成体例.基础上都是用xml传送的.显现用list组件和datagrid都能够,这里我用的是静态文本,由于以为组件用的太贫苦了.以是用了蠢举措,没举措,找不到更好的~~~上面代码中的list[..]就是静态文本的名趁,一次显现15条
//显现程序以下:
//桢称号"list"
stop();
varlogList=newXML();
varlogroot;
varpage:Number;//以后页
varTpage:Number;//保留总页
varTnum:Number;//总日记数
varlogname:String;//日记分类称号
vartemp;
vari:Number;
//这里我用一个数组贮存了对应的id号,假如用组件就不必这么贫苦了
varids=newArray(15);
//两个按钮,用来翻页
bn_u.enabled=false;
bn_d.enabled=false;
if(page==nullorpage<1){
page=1;
}
//------------------------------
//扫除函数;
functionmyclear(){
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数据函数
functionlogFunc(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="读取数据堕落,请接洽办理员!";
}
}
//一个自界说的格局题目的函数,怕题目太长
functionFtitle(s,n){
if(length(s)>n){
s=s.substring(0,n-1)+"...";
}
returns;
}
logList.onLoad=logFunc;
//-------------------------------------
//按钮举措
Bn_up=newObject();
//按钮事务,判别页面巨细是不是凌驾值
Bn_up.click=function(evt){
if(page>1){
_root.page--;
gotoAndPlay("cycle");
}else{
stop();
}
};
Bn_d=newObject();
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很分明了
<?xmlversion="1.0"encoding="gb2312"?>
<%
Response.ContentType="text/xml"
Response.CacheControl="no-cache"
Response.AddHeader"Pragma","no-cache"
Response.Expires=0
dimlog_cat,page,pageSize,Tnum,Tpage,log_name
page=TreeRequest("page",1)
log_cat=TreeRequest("log_cat",1)
pageSize=15
callTree_rs
iflog_cat=0orlog_cat=""then
sql="select*fromlogorderbywritten_timeDESC,log_IDDESC"
else
sql="select*fromlog,log_catwherelog.cat_id=log_cat.IDandcat_id="&log_cat&"orderbywritten_timeDESC,log_IDDESC"
Endif
rs.opensql,conn,1,1
rs.PageSize=pageSize
Tnum=rs.RecordCount
Tpage=Int(Tnum/pageSize*-1)*-1
ifpage=""thenpage=1
ifTnum0thenrs.AbsolutePage=page
iflog_cat=0orlog_cat=""then
log_name="[全体分类]"
else
log_name="["&rs("cat_name")&"]"
Endif
’以下输入xml
’------------------------------------------------
response.write("<Treelogname=’"&log_name&"’Tnum=’"&Tnum&"’Tpage=’"&Tpage&"’>")
ifrs.eofthen
rs.close
else
dowhilenotrs.eofandpageSize>0
response.write("<Treesauthor=’"&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
Endif
//封闭rs
callTree_rsclose
callTree_conclose
response.write("</Tree>")
%>
代码好象很乱,但愿能对正在做这个的伴侣有点匡助,假如以上有bug,请指教
大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧 |
|