首页 > 语言 > JavaScript > 正文

基于javascript实现单选及多选的向右和向左移动实例

2024-05-06 16:23:42
字体:
来源:转载
供稿:网友

这篇文章主要介绍了基于javascript实现单选及多选的向右和向左移动,涉及javascript针对页面元素的动态操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了基于javascript实现单选及多选的向右和向左移动实例。分享给大家供大家参考。具体实现方法如下:

方法 一:

 

 
  1. <body> 
  2. <h1>实现单选及多选的向右和向左移动</h1> 
  3. <div id="lst"
  4. <span> 
  5. <select id="lselect" size="10" multiple="multiple" style="width: 100px; background-color:blue;"
  6. <option>选项1</option> 
  7. <option>选项2</option> 
  8. <option>选项3</option> 
  9. <option>选项4</option> 
  10. <option>选项5</option> 
  11. <option>选项6</option> 
  12. <option>选项7</option> 
  13. <option>选项8</option> 
  14. <option>选项9</option> 
  15. <option>选项10</option> 
  16. </select> 
  17. <span style="width: 200px;height: 100px;"
  18. <input type="button" value="单个向右移动" onclick="oneRMove()" /> 
  19. <input type="button" value="多个向右移动" onclick="moveRMove()" /> 
  20. <input type="button" value="单个向左移动" onclick="oneLMove()" /> 
  21. <input type="button" value="多个向左移动" onclick="moveLMove()" /> 
  22. </span> 
  23. <span> 
  24. <select id="rselect" size="10" style="width: 100px;background-color: yellow;" multiple="multiple"
  25. </select> 
  26. </span> 
  27. </span> 
  28. </div>  
  29. </body> 
  30. <script type="text/javascript"
  31. window.onload = function(){} 
  32. //获取select对象 
  33. var lselect=document.getElementById("lselect"); 
  34. var rselect=document.getElementById("rselect"); 
  35. //获取lselect和roptions对象中的所有option 
  36. var loptions=lselect.options; 
  37. var roptions=rselect.options; 
  38. function oneRMove(){ 
  39. for(var i=0;i<loptions.length;i++){ 
  40. var op=loptions[i]; 
  41. if(op.selected){ 
  42. rselect.appendChild(op); 
  43. break
  44. function moveRMove(){ 
  45. for(var i=0;i<loptions.length;i++){ 
  46. var op=loptions[i]; 
  47. if(op.selected){ 
  48. rselect.appendChild(op); 
  49. i--; 
  50. function oneLMove(){ 
  51. for(var i=0;i<roptions.length;i++){ 
  52. var op=roptions[i]; 
  53. if(op.selected){ 
  54. lselect.appendChild(op); 
  55. break
  56. function moveLMove(){ 
  57. for(var i=0;i<roptions.length;i++){ 
  58. var op=roptions[i]; 
  59. if(op.selected){ 
  60. lselect.appendChild(op); 
  61. i--; 
  62. </script> 

方法 二:

 

 
  1. <script type="text/javascript"
  2. sortitems = 1; 
  3. function move(fbox,tbox) { 
  4. for(var i=0; i<fbox.options.length; i++) { 
  5. if(fbox.options[i].selected && fbox.options[i].value != "") { 
  6. var no = new Option(); 
  7. no.value = fbox.options[i].value; 
  8. no.text = fbox.options[i].text; 
  9. tbox.options[tbox.options.length] = no; 
  10. fbox.options[i].value = ""
  11. fbox.options[i].text = ""
  12. BumpUp(fbox); 
  13. if (sortitems) SortD(tbox); 
  14. function BumpUp(box) { 
  15. for(var i=0; i<box.options.length; i++) { 
  16. if(box.options[i].value == "") { 
  17. for(var j=i; j<box.options.length-1; j++) { 
  18. box.options[j].value = box.options[j+1].value; 
  19. box.options[j].text = box.options[j+1].text; 
  20. var ln = i;break
  21. if(ln < box.options.length) { 
  22. box.options.length -= 1; 
  23. BumpUp(box); 
  24. function SortD(box) { 
  25. var temp_opts = new Array();  
  26. var temp = new Object();  
  27. for(var i=0; i<box.options.length; i++) {  
  28. temp_opts[i] = box.options[i]; 
  29. for(var x=0; x<temp_opts.length-1; x++) { 
  30. for(var y=(x+1); y<temp_opts.length; y++) { 
  31. if(temp_opts[x].text > temp_opts[y].text) { 
  32. temp = temp_opts[x].text; 
  33. temp_opts[x].text = temp_opts[y].text; 
  34. temp_opts[y].text = temp; 
  35. temp = temp_opts[x].value; 
  36. temp_opts[x].value = temp_opts[y].value; 
  37. temp_opts[y].value = temp; 
  38. for(var i=0; i<box.options.length; i++) { 
  39. box.options[i].value = temp_opts[i].value; 
  40. box.options[i].text = temp_opts[i].text; 
  41. </script> 
  42. </head> 
  43. <body> 
  44. <form ACTION="" METHOD="POST"
  45. <table border="0"
  46. <tr> 
  47. <td><select multiple size="5" name="list1"
  48. <option value="l1">A</option> 
  49. <option value="l2">B </option> 
  50. <option value="l3">C</option> 
  51. <option value="l4">D</option> 
  52. </select></td> 
  53. <td> 
  54. <input type="button" value="向右" onclick="move(this.form.list1,this.form.list2)" name="B1"><br> 
  55. <input type="button" value="向左" onclick="move(this.form.list2,this.form.list1)" name="B2"
  56. </td> 
  57. <td><select multiple size="5" name="list2"
  58. <option value="r1">E</option> 
  59. <option value="r2">F </option> 
  60. <option value="r3">G</option> 
  61. <option value="r4">H</option> 
  62. </select></td> 
  63. </tr> 
  64. </table> 
  65. </form> 
  66. </body> 

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选