Add, move, delete, select all, and other operations dynamically in the Multi-choice box
By sundy 2004-10-27
<%
Dim
A = Split (request. Form ("sourcelist "),",")
Response. write "Source:" & request. form ("sourcelist") & ubound (a) & "<br> Object:" & request. form ("objectlist") & "<br>"
%>
<HTML>
<Head>
<Meta http-equiv = "Content-Type" content = "text/html; charset = gb2312">
<Title> untitled document </title>
<Style type = text/CSS>
. Bgsubleft {
Background-position: center bottom; Background-image: URL (images/bgleft.gif); background-repeat: Repeat-x
}
. Bgsubleftn {
Background-position: Left Bottom; Background-image: URL (images/bgleftn.gif); background-repeat: No-repeat
}
</Style>
<Script language = "JavaScript" type = "text/JavaScript">
Function addselectedlist ()
{
VaR objsource = form1.sourcelist;
VaR objobject = form1.objectlist;
VaR sourcelen = objsource. length;
For (VAR I = 0; I <sourcelen; I ++ ){
If (objsource. Options [I]. Selected ){
If (! Checkexist (objobject, objsource. Options [I]. Value )){
Addtolist (objobject, objsource. Options [I]. Text, objsource. Options [I]. value );
}
}
}
}
Function addalllist ()
{
VaR objsource = form1.sourcelist;
VaR objobject = form1.objectlist;
VaR sourcelen = objsource. length;
For (VAR I = 0; I <sourcelen; I ++ ){
If (! Checkexist (objobject, objsource. Options [I]. Value )){
Addtolist (objobject, objsource. Options [I]. Text, objsource. Options [I]. value );
}
}
}
Function removeselectedlist (noremovevalue)
{
VaR objobject = form1.objectlist;
For (VAR I = 0; I <objobject. length; I ++ ){
If (objobject. Options [I]. Selected & objobject. Options [I]. value! = Noremovevalue)
{
Objobject. Options. Remove (I );
Removelist (noremovevalue); break;
}
}
}
Function removealllist (noremovevalue)
{
VaR objobject = form1.objectlist;
VaR objlen = objobject. length;
For (VAR I = 0; I <objlen; I ++ ){
If (objobject. Options [I]. value! = Noremovevalue ){
Objobject. Options. Remove (I );
Removealllist (noremovevalue); break;
}
}
}
Function selectedall (OBJ)
{
For (VAR I = 0; I <obj. length; I ++ ){
OBJ. Options [I]. Selected = true;
}
}
Function checkexist (OBJ, value)
{
VaR isexist = false;
For (VAR I = 0; I <obj. length; I ++ ){
If (obj. Options [I]. value = value ){
Isexist = true;
Break;
}
}
Return isexist;
}
Function addtolist (OBJ, value, label ){
OBJ. Add (New Option (value, label ));
}
</SCRIPT>
</Head>
<Body bgcolor = "# ffffff">
<Form name = "form1" Action = "Temp. asp" method = "Post">
<Table width = "200" border = "0" cellspacing = "0" cellpadding = "0">
<Tr>
<TD> <select name = "sourcelist" size = "10" Multiple ID = "sourcelist" style = "width: 150">
<Option value = "A"> 1 </option>
<Option value = "B"> 2 </option>
<Option value = "C"> 3 </option>
<%
For I = 6 to 20
Response. Write ("<option value =" "& I + 200 &" ">" & I + 200 & "</option>" & vbcrlf)
Next
%>
</SELECT> </TD>
<TD> <input name = "add" type = "button" id = "add" value = "add" onclick = "addselectedlist ()" style = "width: 100 "> <br>
<Input name = "add" type = "button" id = "add" value = "add all" onclick = "addalllist ()" style = "width: 100 "> <br>
<Input name = "add" type = "button" id = "add" value = "Remove" onclick = "removeselectedlist ('A')" style = "width: 100 "> <br>
<Input name = "add" type = "button" id = "add" value = "Remove all" onclick = "removealllist ('A')" style = "width: 100 ">
<Input name = "add" type = "button" id = "add" value = "select all" onclick = "selectedall (form1.objectlist)" style = "width: 100 "> </TD>
<TD> <select name = "objectlist" size = "10" Multiple ID = "objectlist" style = "width: 150">
<Option value = "A"> 1 </option>
<Option value = "D"> 4 </option>
<Option value = "E"> 5 </option>
<%
For I = 6 to 20
Response. Write ("<option value =" & I & ""> "& I &" </option> "& vbcrlf)
Next
%>
</SELECT> </TD>
</Tr>
<Tr>
<TD> </TD>
<TD> <input name = "subm" type = "Submit" value = "Submit" style = "width: 100"> </TD>
<TD> & nbsp; </TD>
</Tr>
</Table>
</Form>
</Body>
</Html>