<!--张凤民-->
<html>
<head>
<title>Tree walk test - JScript</title>
<style>body { f c>
<meta name="ProgId" c>
</head>
<!--
配置说明:width控制当前列的宽度;sortBy排序指向下面的data的tagname;sortType为排序类型,目前支持三种:text,date,number,
也可实现自己的类型,只要修改sort函数就可了
-->
<XML ID="head">
<xmldata>
<username width="150" sortBy="username" sortType="text">用户名</username>
<pw width="150" sortBy="pw" sortType="number">密码</pw>
<date width="200" sortBy="date" sortType="date">日期</date>
</xmldata>
</XML>
<!--
配置说明:isShow,控制此处内容是否显示;isKey是否是主键,1是且内容会在theValue里面显示,0否;
-->
<XML ID="data">
<xmldata>
<row>
<id isShow="0" isKey="1">1</id>
<username isShow="1" isKey="1">fmzhang1</username>
<pw isShow="1" isKey="1">1</pw>
<date isShow="1" isKey="0">2003-3-3</date>
</row>
<row>
<id isShow="0" isKey="1">2</id>
<username isShow="1" isKey="1">fmzhang11</username>
<pw isShow="1" isKey="1">1</pw>
<date isShow="1" isKey="0">2003-3-3</date>
</row>
<row>
<id isShow="0" isKey="1">3</id>
<username isShow="1" isKey="1">fmzhang2</username>
<pw isShow="1" isKey="1">2</pw>
<date isShow="1" isKey="0">2003-3-7</date>
</row>
<row>
<id isShow="0" isKey="1">4</id>
<username isShow="1" isKey="1">fmzhang3</username>
<pw isShow="1" isKey="1">3</pw>
<date isShow="1" isKey="0">2003-5-3</date>
</row>
<row>
<id isShow="0" isKey="1">5</id>
<username isShow="1" isKey="1">fmzhang4</username>
<pw isShow="1" isKey="1">4</pw>
<date isShow="1" isKey="0">2002-3-3</date>
</row>
<row>
<id isShow="0" isKey="1">6</id>
<username isShow="1" isKey="1">fmzhang5</username>
<pw isShow="1" isKey="1">5</pw>
<date isShow="1" isKey="0">2003-1-3</date>
</row>
<row>
<id isShow="0" isKey="1">7</id>
<username isShow="1" isKey="1">fmzhang6</username>
<pw isShow="1" isKey="1">6</pw>
<date isShow="1" isKey="0">2005-1-3</date>
</row>
<row>
<id isShow="0" isKey="1">8</id>
<username isShow="1" isKey="1">fmzhang7</username>
<pw isShow="1" isKey="1">7</pw>
<date isShow="1" isKey="0">2003-5-3</date>
</row>
<row>
<id isShow="0" isKey="1">9</id>
<username isShow="1" isKey="1">fmzhang8</username>
<pw isShow="1" isKey="1">8</pw>
<date isShow="1" isKey="0">2003-1-8</date>
</row>
<row>
<id isShow="0" isKey="1">10</id>
<username isShow="1" isKey="1">fmzhang9</username>
<pw isShow="1" isKey="1">9</pw>
<date isShow="1" isKey="0">2003-11-3</date>
</row>
</xmldata>
</XML>
<body id="objbody" >
<div id="mydiv">
</div>
<table border="0" cellpadding="2" width="57%">
<tr>
<td width="13%"><input type="butt ></td>
<td width="14%"><input type="butt ></td>
<td width="35%"><input type="butt ></td>
<td width="14%"><input type="butt ></td>
<td width="40%"><input type="text" size="5" maxlength="5" name="pageNum" value ><input type="butt ></td>
</tr>
<tr>
<td width="13%">用户名</td>
<td width="14%"><input type="text" name="xm" size="10" value></td>
<td width="35%" nowrap ><input type="checkbox" name="isResult" value="http://www.dedecms.com/web-art/htmlbase/Javascript/20040525/colspan="2"><input type="butt value="http://www.dedecms.com/web-art/htmlbase/Javascript/20040525/查找" size="10"></td>
</tr>
</table>
<table border="0" cellpadding="2" width="100%">
</table>
<table id="tableSec">
<tr>
<td>
<!--
添加自己的按钮
-->
<input type="butt ></td>
</tr>
</table>
</body>
</html>
<script>
//下面为初始化参数
var datanodes=data.documentElement.childNodes;
//下面三行保存副本,供删除以后恢复
var xmlDoc=document.all("data").XMLDocument;
var xmlDocTemp=new ActiveXObject("MSXML.DOMDocument");
xmlDocTemp.appendChild(xmlDoc.documentElement.cl;
}
var buildArr=new Array();//保存当前页要生成的记录序号
var sortOrder=''asce'';//保存升序还是降序
mydiv.innerText="一共"+totalpage+"页"+totalrow+"条记录,当前为第1页,当前选中0条记录";
var nodes=head.documentElement.childNodes;
var nodeslen=nodes.length;
var attributes=head.documentElement.firstChild.attributes;
var objform=document.createElement("<FORM name=''fjcl''>");
var objtable=document.createElement("<TABLE bordercolor=''#1EC600'' border=''1''>");
var objtbody=document.createElement("TBODY");
objtable.appendChild(objtbody);
</script>
<script language="javascript">
//生成表格头部
functi;
objtd.innerText=" ";
objtr.appendChild(objtd);
for(var i=0;i<nodeslen;i++)
{
var objtd=document.createElement("<TD ;
var sortBy=head.documentElement.childNodes.item(i).getAttribute("sortBy");
var sortType=head.documentElement.childNodes.item(i).getAttribute("sortType");
objtd.+sortBy+"'',''"+sortType+"'',''"+i+"'')";
var tdtext=nodes.item(i).text+"→";
var objtext=document.createTextNode(tdtext);
objtd.appendChild(objtext);
objtr.appendChild(objtd);
}
objform.appendChild(objtable);
objbody.appendChild(objform);
objbody.appendChild(tableSec);
}
//添加符合条件的记录
functi;
objtr.;
var thetd=document.createElement("TD");
var objCheckBox;
if(checkArr[buildArr[i]-1]==0)
{
objCheckBox=document.createElement("<input type=''CHECKBOX'' name=''rad'' value='''' )
objCheckBox.value=http://www.dedecms.com/web-art/htmlbase/Javascript/20040525/objCheckBox.value+datanodes.item(buildArr[i]-1).childNodes.item(j).tagName+"="+datanodes.item(buildArr[i]-1).childNodes.item(j).text;
else
objCheckBox.value=http://www.dedecms.com/web-art/htmlbase/Javascript/20040525/objCheckBox.value+"&"+datanodes.item(buildArr[i]-1).childNodes.item(j).tagName+"="+datanodes.item(buildArr[i]-1).childNodes.item(j).text;
}
}
theValueArr[buildArr[i]-1]=objCheckBox.value;
objtbody.appendChild(objtr);
}
objform.appendChild(objtable);
objbody.appendChild(objform);
objbody.appendChild(tableSec);
}
//翻页按钮操作
functi)
{
del();
addHead();
buildArr=new Array();
if(totalrow>=pagerow){
for(var i=1;i<=pagerow;i++)
buildArr[i-1]=i;
}else{
for(var i=1;i<=totalrow;i++)
buildArr[i-1]=i;
}
addAll();
currPage=1;
}else if(thePage=="prov")
{
if(currPage==1) return false;
del();
addHead();
buildArr=new Array();
for(var i=1;i<=pagerow;i++){
buildArr[i-1]=(currPage-2)*pagerow+i;
}
addAll();
currPage=currPage-1;
}else if(thePage=="next")
{
if(currPage==totalpage) return false;
del();
addHead();
buildArr=new Array();
if((currPage+1)*pagerow>=totalrow){
for(var i=1;i<=totalrow-currPage*pagerow;i++)
buildArr[i-1]=currPage*pagerow+i;
}else {
for(var i=1;i<=pagerow;i++)
buildArr[i-1]=currPage*pagerow+i;
}
addAll();
currPage=currPage+1;
}else if(thePage=="last")
{
if(currPage==totalpage) return false;
del();
addHead();
buildArr=new Array();
if(totalrow%pagerow==0){
for(var i=1;i<=pagerow;i++)
buildArr[i-1]=totalrow-pagerow+i;
}else{
for(var i=1;i<=totalrow%pagerow;i++)
buildArr[i-1]=totalrow-totalrow%pagerow+i;
}
addAll();
currPage=totalpage;
}
changeMyDiv();
}
//删除objform下面的所有内容
functi;
}
else
{
objtbody.childNodes.item(i+1).className="later";
}
}
changeMyDiv();
}
functi+totalpage+"页"+totalrow+"条记录,当前为第"+currPage+"页,当前选中"+totalChecked+"条记录";
}
functi;
var str2="";
for(var i=0;i<totalrow;i++)
{
str+=checkArr[i]+";";
if(checkArr[i]==1) str2+=theValueArr[i]+";";
}
alert(str);
alert(str2);
}
//跳转到某个页
functi;
} else if(sortOrder==''desc''){ //降序
for(var i=0;i<buildArr.length;i++){
for(var j=0;j<buildArr.length-1;j++){
var tempArr;
var tempSort;
if(sortType==''text''){
if(compare_text(sortByArr[j],sortByArr[j+1])==0){
tempArr=sortByArr[j];sortByArr[j]=sortByArr[j+1];sortByArr[j+1]=tempArr;
tempSort=buildArr[j];buildArr[j]=buildArr[j+1];buildArr[j+1]=tempSort;
}
}else if(sortType==''number''){
if(compare_number(sortByArr[j],sortByArr[j+1])==0){
tempArr=sortByArr[j];sortByArr[j]=sortByArr[j+1];sortByArr[j+1]=tempArr;
tempSort=buildArr[j];buildArr[j]=buildArr[j+1];buildArr[j+1]=tempSort;
}
}else if(sortType==''date''){
if(compare_date(sortByArr[j],sortByArr[j+1])==0){
tempArr=sortByArr[j];sortByArr[j]=sortByArr[j+1];sortByArr[j+1]=tempArr;
tempSort=buildArr[j];buildArr[j]=buildArr[j+1];buildArr[j+1]=tempSort;
}
}
}
}
sortOrder="asce";
}
del();
addHead();
addAll();
if(sortOrder=="asce"){
objtable.rows[0].cells[parseInt(sortNum)+1].innerText=nodes.item(parseInt(sortNum)).text+"↓";
}else{
objtable.rows[0].cells[parseInt(sortNum)+1].innerText=nodes.item(parseInt(sortNum)).text+"↑";
}
}
//在原有结果中查找时也删除data的所有node,然后把xmlDocTemp的所有node复制到data里面
functi;
}
buildArr=new Array();//保存当前页要生成的记录序号
sortOrder=''asce'';//保存升序还是降序
mydiv.innerText="一共"+totalpage+"页"+totalrow+"条记录,当前为第1页,当前选中0条记录";
show(''first'');
}
//下面这个函数需要你自己实现,符合条件的记录(要显示)返回true,否则返回false
function isShow(nodeNo)
{
var myxm=xm.value;
var temp=datanodes.item(nodeNo).getElementsByTagName("username");
if(temp.item(0).text.indexOf(myxm)!=-1) return true;
return false;
}
</script>
欢迎您访问www.5ucms.org
上一篇:5ucms插件,轻松实现删除确认 下一篇:5ucms模版,一个短小精悍使用的对象化QQ菜单 |
|
本站声明:本网站所载文章等内容,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权及其它问题,请在30日内与本网联系(Email:3876307#qq.com),我们将在第一时间删除内容。若原创内容转载请注明出处。 5ucms仿站,用数据岛生成翻页程序的关键词: |