javascript实现全选,反选功能

淡淡的烟草味﹌ 2022-05-17 10:48 409阅读 0赞

今天看项目发现有全选和反选的按钮实现,比较感兴趣,从网上搜索了自己实现了一下

实现的方式就是 在我们的按钮中设置响应的事件,然后在我们的函数中,通过定义的多选按钮的name遍历通过 if…else…判断将状态改变,原文章地址

这里需要注意括号的对应,还有拼写的正确,(我在多选按钮中少写了个c,导致操作失败)

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Document</title>
  6. <script type="text/javascript">
  7. //获取checkbox按钮组
  8. var allpro = document.getElementsByName("c1");
  9. //全选方法
  10. function change() {
  11. //获取全选按钮
  12. var all = document.getElementById("all");
  13. //全选按钮被选中时,遍历所有按钮
  14. if (all.checked) {
  15. for (var i = 0; i < allpro.length; i++) {
  16. if (allpro[i].type=="checkbox") {
  17. allpro[i].checked=true;
  18. }
  19. }
  20. //全选按钮取消
  21. }else{
  22. for (var i = 0; i < allpro.length; i++) {
  23. if (allpro[i].type=="checkbox") {
  24. allpro[i].checked=false;
  25. }
  26. }
  27. }
  28. }
  29. //反选的方法
  30. function revs() {
  31. //获得反选按钮
  32. var reverse = document.getElementById("revcheck");
  33. //反选按钮被选中时,遍历所有按钮
  34. if (reverse.checked) {
  35. for (var i = 0; i < allpro.length; i++) {
  36. if (allpro[i].type=="checkbox"&&allpro[i].checked==true) {
  37. allpro[i].checked= false;
  38. }else if (allpro[i].type=="checkbox"&&allpro[i].checked==false) {
  39. allpro[i].checked= true;
  40. }
  41. }
  42. //反选按钮取消
  43. }else{
  44. for (var i = 0; i < allpro.length; i++) {
  45. if (allpro[i].type=="checkbox"&&allpro[i].checked==true) {
  46. allpro[i].checked= false;
  47. }else if (allpro[i].type=="checkbox"&&allpro[i].checked==false) {
  48. allpro[i].checked= true;
  49. }
  50. }
  51. }
  52. }
  53. </script>
  54. </head>
  55. <body>
  56. <input type="checkbox" name="c0" id="all" value="全选" onclick="change()">全选
  57. <input type="checkbox" name="r0" id="revcheck" value="反选" onclick="revs()">反选
  58. <hr>
  59. <table>
  60. <tr>
  61. <td><input type="checkbox" name="c1">上海</td>
  62. </tr>
  63. <tr>
  64. <td><input type="checkbox" name="c1">广州</td>
  65. </tr>
  66. <tr>
  67. <td><input type="checkbox" name="c1">深圳</td>
  68. </tr>
  69. <tr>
  70. <td><input type="checkbox" name="c1">北京</td>
  71. </tr>
  72. </table>
  73. </body>
  74. </html>

发表评论

表情:
评论列表 (有 0 条评论,409人围观)

还没有评论,来说两句吧...

相关阅读