改进过的一个联动控件,使用更加简单方便,提供源代码(转)
来源:互联网 发布:mac玩dota2是什么体验 编辑:程序博客网 时间:2024/06/06 21:34
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>改进过的一个联动控件,使用更加简单方便</title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="iuhxq,qq:4111852,http://blog.csdn.net/iuhxq">
<meta name="Keywords" content="联动">
<meta name="Description" content="改进过的一个联动控件,使用更加简单方便">
</head>
<body>
<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td><span id="select1"></span></td>
<td><input type="button" value="设置值" onclick="liandong.SetValue(1,3,7,13,16,18);"></td>
<td><input type="button" value="取值" onclick="alert(liandong.GetValue());"></td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
</table>
<script language="JavaScript">
<!--
function LianDong(arr, sel, value)
{
sel = document.getElementById(sel);
this.sub = function (i,pid)
{
while(sel.childNodes.length-1>=i)
{
sel.removeChild(sel.childNodes[sel.childNodes.length-1]);
}
var tmp;
var created = false;
for ( var j = 0; j < arr.length; j++)
{
if (arr[j][1] == pid)
{
if (created==false)
{
created = true;
tmp = document.createElement("select");
tmp.setAttribute("id", "liandong_" + i);
//tmp.setAttribute("multiple", "multiple");
tmp.options[tmp.length] = new Option("请选择", "-1");
tmp.onchange = function()
{
p(parseInt(tmp.getAttribute("id").replace("liandong_",""))+1,tmp.value);
};
sel.appendChild(tmp);
}
tmp.options[tmp.options.length] = new Option(arr[j][2], arr[j][0]);
}
}
}
var p = this.sub;
this.SetValue = function()
{
for (var i=0; i<arguments.length; i++)
{
sel.childNodes[i].value = arguments[i];
this.sub(i+1, arguments[i]);
}
}
this.GetValue = function()
{
var value = "";
for (var i=0; i<sel.childNodes.length; i++)
{
var obj = sel.childNodes[i];
for (var j=0; j<obj.options.length; j++)
{
if (obj.options[j].selected)
{
value += obj.options[j].value + ",";
break;
}
}
}
return value;
}
this.sub(0,0);
}
//利用ASP,ASP.NET,PHP等语言输出下边数据和liandong定义即可
var array=new Array();
//array[索引] = new Array("当前ID", "父ID", "名称");
array[0] = new Array("1", "0", "1");
array[1] = new Array("2", "0", "2");
array[2] = new Array("3", "1", "1,3");
array[3] = new Array("4", "1", "1,4");
array[4] = new Array("5", "2", "2,5");
array[5] = new Array("6", "2", "2,6");
array[6] = new Array("7", "3", "3,7");
array[7] = new Array("8", "3", "3,8");
array[8] = new Array("9", "3", "3,9");
array[9] = new Array("10", "1", "1,10");
array[10] = new Array("11", "1", "1,11");
array[11] = new Array("12", "2", "2,12");
array[12] = new Array("13", "7", "7,13");
array[13] = new Array("15", "7", "7,14");
array[14] = new Array("16", "13", "13,16");
array[15] = new Array("17", "13", "13,17");
array[16] = new Array("18", "16", "16,18");
array[17] = new Array("19", "10", "10,19");
//var liandong = new LianDong(数据, 显示容器的ID),该定义最好放在window.onload里运行。
var liandong = new LianDong(array, "select1")
//-->
</script>
</body>
</html>
转自:http://blog.csdn.net/iuhxq/archive/2006/11/08/1372602.aspx(小灰)
- 改进过的一个联动控件,使用更加简单方便,提供源代码(转)
- 改进过的一个联动控件,使用更加简单方便,提供源代码
- 改进过的一个联动控件,使用更加简单方便
- 改进过的一个联动控件,使用更加简单方便
- 一个简单的初始化框架,提供数据初始化的简单加载。适用方便。
- 一个方便使用的在线截图Web控件-WebImageMaker
- JS +XML +Jquery 实现三级联动菜单,自己封装的一个对象方便使用
- 一个很好的省市县三级联动js文件,使用很方便
- 构建一个简单的jquery定时器,方便随时拿来使用。
- 使用 OpenCV 做一个简单方便的抠图工具
- 一个简单的二级联动
- 使用回调函数,简单模拟dbutils中Queryrunner的工作原理,并重写Queryrunner,使其使用起来更加简单方便
- 数据分页控件 ━ 更加灵活,更加实用-提供源码
- 一个简单方便的ANSI和UNICODE互转方法
- 提供一些简单的C++入门程序(提供源代码)
- Python使用Bottle来提供一个简单的web服务
- eclipse 解决中文字体过小的问题,简单方便
- 我见过最简单,方便的屏幕适配
- 一个简单的三层架构
- 资料很好
- 从源码安装MySQL
- 坚持,执着
- 近期完成了PHPWIND的树形论坛改版(PHPWIND的树型论坛结构)
- 改进过的一个联动控件,使用更加简单方便,提供源代码(转)
- log4net简明教程
- 中央办公厅精神【关于86后大学生就业】
- 简单解决AJAX在IE中的缓存问题
- Windows任务计划的bug?
- Get number from string with regular expression in java
- Sysersoft.Syser.Kernel.Debugger.Enterprise.v1.97.1900.1038-ArCADE
- 有关文件中DEBUG定义的解释!
- 报一个到!