这是一个比较实用的JS列表框功能,像很多人才网站的职位选择功能一样,从左侧列表框选择后会添加至右侧列表框,还可以上下移动、增删内容,感觉非常有用的代码。
运行效果如下图所示:
在线演示地址如下:
具体代码如下:
<html> <head> <title>人才网站的职位选择功能代码</title> <script> function move(fbox,tbox) { var i = 0; if(fbox.value != "") { var no = new Option(); no.value = fbox.value; no.text = fbox.value; tbox.options[tbox.options.length] = no; fbox.value = ""; } } function remove(box) { for(var i=0; i<box.options.length; i++) { if(box.options[i].selected && box.options[i] != "") { box.options[i].value = ""; box.options[i].text = ""; } } BumpUp(box); } function BumpUp(abox) { for(var i = 0; i < abox.options.length; i++) { if(abox.options[i].value == "") { for(var j = i; j < abox.options.length - 1; j++) { abox.options[j].value = abox.options[j + 1].value; abox.options[j].text = abox.options[j + 1].text; } var ln = i; break; } } if(ln < abox.options.length) { abox.options.length -= 1; BumpUp(abox); } } function Moveup(dbox) { for(var i = 0; i < dbox.options.length; i++) { if (dbox.options[i].selected && dbox.options[i] != "" && dbox.options[i] != dbox.options[0]) { var tmpval = dbox.options[i].value; var tmpval2 = dbox.options[i].text; dbox.options[i].value = dbox.options[i - 1].value; dbox.options[i].text = dbox.options[i - 1].text dbox.options[i-1].value = tmpval; dbox.options[i-1].text = tmpval2; } } } function Movedown(ebox) { for(var i = 0; i < ebox.options.length; i++) { if (ebox.options[i].selected && ebox.options[i] != "" && ebox.options[i+1] != ebox.options[ebox.options.length]) { var tmpval = ebox.options[i].value; var tmpval2 = ebox.options[i].text; ebox.options[i].value = ebox.options[i+1].value; ebox.options[i].text = ebox.options[i+1].text ebox.options[i+1].value = tmpval; ebox.options[i+1].text = tmpval2; } } } </script> </head> <body> <form ACTION="" METHOD="POST"> <table> <tr> <td> <input type="text" value=""> </td> <td> <input type="button" value="添加"><br> <input type="button" value="删除"><br><br> <input type="button" value="上移"><br> <input type="button" value="下移"> </td> <td> <select multiple size=7> <option value="one">ASP</option> <option value="two">PHP</option> <option value="three">ASP.NET</option> <option value="four">DELPHI</option> <option value="five">VB</option> <option value="six">AJAX</option> </select> </td> </tr> </table> </form> </body> </html>