Javascript无限分类算法的实现
时间:2007-12-27 来源:不详 作者:林子
%>
var y=0;
function loadNextType(upid){
for(var key in tempArray){
var temps=tempArray[key].split("@_!_#_$_|_@");
var z=temps[1];
if(temps[0]==upid){
y =1;
xx="";
for(k=0;k<parseInt(temps[3]);k ){
if(k!=parseInt(temps[3])-1){
xx =" ";
}else{
xx =" ◇";
}
}
dataArray[y]=temps[0] "@_!_#_$_|_@" temps[1] "@_!_#_$_|_@" xx temps[2];
loadNextType(z);
}
}
}
for(var key in tempArray){
var tmp=tempArray[key].split("@_!_#_$_|_@");
if(tmp[0]==0){
dataArray[y]=tmp[0] "@_!_#_$_|_@" tmp[1] "@_!_#_$_|_@" "◆" tmp[2];
loadNextType(tmp[1]);
y =1;
}
}
//-->
</SCRIPT>
<span style="border:1px solid #000000; position:absolute; overflow:hidden;" >
<select name="fenlei" style="margin:-2px;">
<SCRIPT LANGUAGE="javascript">
<!--
for(var key in dataArray){
var tp=dataArray[key].split("@_!_#_$_|_@");
document.write('<option value=' tp[1] '>' tp[2] '</option>'); 织梦内容管理系统
}
//-->
</SCRIPT>
</select></span>
</body>
</html>
讲解: dedecms.com
asp 查询数据库,生成js数据 object(不是数组,类似)
数据库不同的行,对应不同的 tempArray[0] tempArray[1]......
不同字段在每条数据中通过"@_!_#_$_|_@"分割,以避免会与数据中的文本有重复。
织梦好,好织梦
用js通过递归算法重新排列tempArray 得到dataArray 并循环打印成为select中的option
dedecms.com
文章评论
共有位Admini5网友发表了评论 查看完整内容