一个动态生成菜单的JS.保存以备后用.
2008-07-25 09:41
597 查看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head profile="http://gmpg.org/xfn/11">
</head>
<script type="text/javascript" >
SelId = 1 ;
var menuId = new Array(0,1,2,3);
var menuName = new Array(0,1,2,3);
menuId[0] = new Array(-1,201,307,402);
menuId[1] = new Array(731,502,984);
menuId[2] = new Array(718,105,121);
menuId[3] = [111];
menuName[0] = new Array("全部","美剧","故事剧","日剧");
menuName[1] = new Array("越狱","大陆剧","韩剧");
menuName[2] = new Array("台剧","情景剧","喜剧");
menuName[3] = ["喜剧"];
function addOpt(id,curSel)
{
if(id >= 4)
return 0;
if( ( parseInt( curSel.substr( 6 )) + 1 ) != id ) {
return 0 ;
}
var obj = document.getElementById( "select" + id ) ;
if ( obj || 'undefined' == obj ) {
return 0 ;
}
if(document.getElementById( "select0" ).value == 0){
for(var j=1;j<=4;j++){
document.getElementById("d").removeChild(document.getElementById("select"+j));
}
}
var addSel=document.createElement("select");
addSel.id="select"+id ;
addSel.name="cs[]";
var ooption=new Array();
for ( var i=0;i<menuId[id].length;i++){
addSel.options[i]=new Option(menuName[id][i],menuId[id][i]);
}
document.getElementById("d").appendChild(addSel);
document.getElementById("d").removeChild(document.getElementById("select0"));
SelId++ ;
addSel.onchange = function(){addOpt(SelId,"select"+id)};
}
</script>
<body>
<form action="" method="post">
<span id="d">
<select name="cs[]" id="select0" onchange="addOpt(SelId,this.id);">
<option value="-1">全部</option>
<option value="201">美剧</option>
<option value="307">故事剧</option>
<option value="402">日剧</option>
</select>
</span>
<br />
<input type="submit" value="submit"/>
</form>
<pre />
<?php var_dump($_REQUEST)?>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head profile="http://gmpg.org/xfn/11">
</head>
<script type="text/javascript" >
SelId = 1 ;
var menuId = new Array(0,1,2,3);
var menuName = new Array(0,1,2,3);
menuId[0] = new Array(-1,201,307,402);
menuId[1] = new Array(731,502,984);
menuId[2] = new Array(718,105,121);
menuId[3] = [111];
menuName[0] = new Array("全部","美剧","故事剧","日剧");
menuName[1] = new Array("越狱","大陆剧","韩剧");
menuName[2] = new Array("台剧","情景剧","喜剧");
menuName[3] = ["喜剧"];
function addOpt(id,curSel)
{
if(id >= 4)
return 0;
if( ( parseInt( curSel.substr( 6 )) + 1 ) != id ) {
return 0 ;
}
var obj = document.getElementById( "select" + id ) ;
if ( obj || 'undefined' == obj ) {
return 0 ;
}
if(document.getElementById( "select0" ).value == 0){
for(var j=1;j<=4;j++){
document.getElementById("d").removeChild(document.getElementById("select"+j));
}
}
var addSel=document.createElement("select");
addSel.id="select"+id ;
addSel.name="cs[]";
var ooption=new Array();
for ( var i=0;i<menuId[id].length;i++){
addSel.options[i]=new Option(menuName[id][i],menuId[id][i]);
}
document.getElementById("d").appendChild(addSel);
document.getElementById("d").removeChild(document.getElementById("select0"));
SelId++ ;
addSel.onchange = function(){addOpt(SelId,"select"+id)};
}
</script>
<body>
<form action="" method="post">
<span id="d">
<select name="cs[]" id="select0" onchange="addOpt(SelId,this.id);">
<option value="-1">全部</option>
<option value="201">美剧</option>
<option value="307">故事剧</option>
<option value="402">日剧</option>
</select>
</span>
<br />
<input type="submit" value="submit"/>
</form>
<pre />
<?php var_dump($_REQUEST)?>
</body>
</html>
相关文章推荐
- js生成二级城市联动菜单,动态生成年、月、日字段,生产一个验证码
- 已知一个数组 20 个元素(随机 1 到 100 之间包含 1 和 100),求大于平均数的元素个数,并动态生成一个新数组保存
- 一个不错的JS动态左侧菜单[收藏]
- dtree 网页树状菜单及传递对象集合到js内,动态生成节点
- dtree 网页树状菜单及传递对象集合到js内,动态生成节点
- 随机生成30个数字(范围0-30)存到一个数组中,将数组中重复的数字去除,动态创建数组保存剩下的数字
- 下拉列表,选中某个值通过js动态生成一个文本框,javascript,text
- 写一个静态HTML页面,直接写HTML代码和用JS动态生成代码,哪种方式要好
- 用js+jsp实现在同一个下拉列表中,动态生成多级select选项
- 动态生成数组保存:已知一个数组20个元素(随机 1~100之间包含1和100),求大于平均数的元素个数,并动态生成一个新数组保存
- JS 动态生成一个下载详细信息提示框
- dtree 网页树状菜单及传递对象集合到js内,动态生成节点
- js动态生成变量(eg:加载js并使用js变量)
- 分享一个jQuery的自动客户端本地保存插件Sisyphus.js - 帮助你自动保存用户输入内容
- js动态生成文件域的操作
- JS生成动态表格并为每个单元格添加单击事件的方法
- 从数据库读取数据动态生成树形菜单示例
- 一个可动态编辑多条数据的JS
- 一个简单的JS菜单
- cocos2d JS-(JavaScript) 动态生成方法的例子