日期:2014-05-18  浏览次数:20644 次

关于二级联动的实现
兄弟现在想做个二级联动的效果,看了下论坛貌似要用到AJAX技术,哪位兄弟能给个能用的例子呢??
两个下拉选框的数据是从数据库中取的,其中第一个下拉框是select project from game_project order by project desc ;
第二个下拉框的数据是select item from game_item order by item desc,想要达到的效果是用户选择了第一下拉框里的内容,第二个能相对应的变化。能否帮帮忙啊~~挺着急的~~~

------解决方案--------------------
JScript code
<form name="frm">
<select name="s1" onChange="redirec(document.frm.s1.options.selectedIndex)">
 <option selected>请选择</option>
 <option value="1">脚本语言</option>
 <option value="2">高级语言</option>
 <option value="3">其他语言</option>
</select> 

<select name="s2">
 <option value="请选择" selected>请选择</option>
</select>
</form>


<script language="javascript">
//获取一级菜单长度
var select1_len = document.frm.s1.options.length;
var select2 = new Array(select1_len);

//把一级菜单都设为数组
for (i=0; i<select1_len; i++) 
{
 select2[i] = new Array();
}

//定义基本选项
select2[0][0] = new Option("请选择", " ");

select2[1][0] = new Option("PHP", " ");
select2[1][1] = new Option("ASP", " ");
select2[1][2] = new Option("JSP", " ");

select2[2][0] = new Option("C/C++", " ");
select2[2][1] = new Option("Java", " ");
select2[2][2] = new Option("C#", " ");

select2[3][0] = new Option("Perl", " ");
select2[3][1] = new Option("Ruby", " ");
select2[3][2] = new Option("Python", " ");

//联动函数
function redirec(x)
{
 var temp = document.frm.s2; 
 for (i=0;i<select2[x].length;i++)
 {
  temp.options[i]=new Option(select2[x][i].text,select2[x][i].value);
 }
 temp.options[0].selected=true;

}

</script>

------解决方案--------------------
用DWR,挺简单的,只需要一个XML配置文件和一个JAR包就可以了
我手头上没Demo,你可以去看一下DWR的资料
------解决方案--------------------
我有个dwr的 ajax的 你去下载撒 你在csdn下载频道搜索 jsp ajax 三级联动 你就可以找到了 你去下载吧