您的位置:首页 > Web前端 > JavaScript

Java Web基础:第十九讲 JavaScript处理(二)

2009-12-30 09:07 232 查看
本文内容摘自:《Java Web开发教程——入门与提高篇(JSP+Servlet)》

实例:组合列表框
应用背景:页面中有两个列表框,需要把左边的一些选项添加到右边的列表框中,或者把左边的一些选项移动到左边的列表框中。
典型例子:
组合列表框的效果:效果如图4.1所示。



图4.1 组合列表框
实现的基本思路:
l 编写init方法对两个列表框进行初始化;
l 为body添加onload事件调用init方法;
l 编写move(s1,s2)方法把s1中选中的选项添加到s2中,同时在s1中删除该选项;
l 编写moveAll(s1,s2)方法把s1中所有的选项都移动到s2中;
l 为中间的4个按钮添加onclick事件,分别调用move(s1,s2) 和moveAll(s1,s2)两个方法。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<script language="javascript" type="text/javascript">
// 对下拉框信息进行初始化
function init(){
var options = new Array(10);
for(i = 0;i<10;i++)
{
options[i] = "选项"+(i+1);
}
s1.length=10;
for(i = 0;i<10;i++)
{
s1.options[i].value=i+1;
s1.options[i].text=options[i];
}
}

// 把选中的选项移动到右边
function move(s1,s2){
// 判断是否有选择项
index = s1.selectedIndex
if(index==-1){
alert("没有选择");
return;
}

// 修改s2,把s1中选中的选项添加到s2中
s2.length++;
s2.options[s2.length-1].value = s1.options[index].value;
s2.options[s2.length-1].text= s1.options[index].text;

// 删除s1中被选择的选项
s1.remove(index);
}

// 把所有选项移动到右边
function moveAll(s1,s2){
// 判断是否有选择项
if(s1.length == 0){
alert("没有可用选择");
return;
}

// 把s1中的选项添加到s2中
s2.length = s1.length + s2.length;
for(i=0;i<s1.length;i++){
s2.options[s2.length-s1.length+i].value=s1.options[i].value;
s2.options[s2.length-s1.length+i].text=s1.options[i].text;
}

// 清空s1
s1.length = 0;
}
</script>
<style type="text/css">
input {width =40}
</style>

<head>
<title>jsp4-1-1-c.html</title>

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">

<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

</head>

<body onload="init()">
<table>
<tr>
<td>
<select name="s1" size=10 style="width: 100">
</select>
</td>
<td>
<input type="button" name="moveToRight" value=">" onClick="move(s1,s2)">
<br>
<input type="button" name="moveAllToRight" value=">>" onClick="moveAll(s1,s2)">
<br>
<input type="button" name="moveToLeft" value="<" onClick="move(s2,s1)">
<br>
<input type="button" name="moveAllToLeft" value="<<" onClick="moveAll(s2,s1)">
<br>
</td>
<td>
<select name="s2" size=10 style="width: 100">
</select>
</td>
</tr>
</table>
</body>
</html>
上一讲:第十八讲 JavaScript处理(一)
下一讲:第二十讲 Ajax概述
李绪成 CSDN Blog:http://blog.csdn.net/javaeeteacher
邀请您为好友:http://student.csdn.net/invite.php?u=124362&c=7be8ba2b6f3b6cc5
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: