关于RADIO与CHECKBOX的JS的代码

来源:互联网 发布:阿里云6元虚拟主机申请 编辑:程序博客网 时间:2024/05/21 14:53
  1. /**       
  2. * 全选的所有指定名称的checkbox      
  3. *@state 全选的checkbox的状态      
  4. *@name    表格中的所有checkbox的名称      
  5. *@author fangtf      
  6. *@type void      
  7. */          
  8. function selectAll(state,name) {          
  9.      var ids = document.getElementsByName(name);          
  10.     for (var i = 0; i < ids.length; i++)           
  11.      {                 
  12.              ids[i].checked = state;          
  13.      }          
  14. }          
  15.          
  16. /**       
  17. * 全选的所有指定id名称的同名checkbox      
  18. *@state 全选的checkbox的状态      
  19. *@name    表格中的所有checkbox的名称      
  20. *@name    表格中的所有checkbox的id      
  21. *@author fangtf      
  22. *@type void      
  23. */          
  24. function selectAllCheckboxByID(state,name,id) {          
  25.      var ids = document.getElementsByName(name);          
  26.     for (var i = 0; i < ids.length; i++)           
  27.      {                 
  28.             if(ids[i].id == id)          
  29.              {          
  30.                  ids[i].checked = state;          
  31.              }          
  32.                       
  33.      }          
  34. }          
  35.          
  36. /**       
  37. * 全选页面上所有的checkbox      
  38. *@state 全选的checkbox的状态      
  39. *@author fangtf      
  40. *@type void      
  41. */          
  42. function selectAlls(state)           
  43. {          
  44.      var inputs = document.getElementsByTagName("input");          
  45.     for(var i =0;i   
  46.      {          
  47.         if(inputs[i].type == "checkbox")          
  48.          {          
  49.              inputs[i].checked =state;           
  50.          }          
  51.      }          
  52.          
  53. }          
  54.          
  55. /**      
  56. *得到鼠标所单击的行      
  57. *@type Object      
  58. */          
  59. function GetRow(oElem) {          
  60.     while (oElem) {          
  61.         if (oElem.tagName.toLowerCase() == "tr" && oElem.parentElement.tagName.toLowerCase() == "tbody") {          
  62.             return oElem;          
  63.          }          
  64.         if (oElem.tagName.toLowerCase() == "table" || oElem.tagName.toLowerCase() == "th") {          
  65.             return false;          
  66.          }          
  67.          oElemoElem = oElem.parentElement;          
  68.      }          
  69. }          
  70.          
  71. /**       
  72. * 全选当前行的checkbox      
  73. *@state 全选的checkbox的状态      
  74. *@author fangtf      
  75. *@type void      
  76. */          
  77. function selectRowCheckbox(state)          
  78. {          
  79.    var row = GetRow(window.event.srcElement);          
  80.    var cells = row.childNodes;           
  81.   for(var i=0;i   
  82.    {          
  83.        var cell = cells[i].childNodes[0];          
  84.      if(cell.tagName == "INPUT")          
  85.       {          
  86.          cell.checked = state;          
  87.       }          
  88.    }          
  89. }          
  90.          
  91. /**       
  92. *选中指定值的Radio      
  93. *如:有两个radio,      
  94. *第一个的name="ids",value="1"     
  95. *第二个的name="ids",value="2"     
  96. *调用方法selectRadio("ids","1");      
  97. *那么数值为1的Radio将被选中      
  98. *@name radio的名称      
  99. *@value radio的值      
  100. *@author fangtf      
  101. *@type void      
  102. */          
  103. function selectRadio(name,value) {          
  104.      var radioObject = document.getElementsByName(name);          
  105.     if(value === "")          
  106.      {          
  107.          radioObject[0].checked = true;          
  108.         return;          
  109.      }          
  110.     for (var i = 0; i < radioObject.length; i++)           
  111.      {          
  112.         if(radioObject[i].value == value)          
  113.          {          
  114.              radioObject[i].checked = true;          
  115.             break;          
  116.          }          
  117.                   
  118.      }          
  119. }          
  120.          
  121. /**       
  122. *选中指定值的checkbox      
  123. *如:有两个checkbox,      
  124. *第一个的name="ids",value="1"     
  125. *第二个的name="ids",value="2"     
  126. *第三个的name="ids",value="3"     
  127. *调用这个方法selectCheckbox("ids","1,2")那么数值为1,2的checkbox将被选中      
  128. *                      
  129. *@name 要选中的checkbox数组的名称      
  130. *@value 判断时候选中的值      
  131. *@author fangtf      
  132. *@type void      
  133. */          
  134. function selectCheckbox(name,value) {          
  135.      var checkObject = document.getElementsByName(name);          
  136.      var valuevalues = value.split(",");          
  137.     for(var j = 0; j < values.length; j++)          
  138.      {          
  139.         for (var i = 0; i < checkObject.length; i++)           
  140.          {          
  141.             if(checkObject[i].value == values[j])          
  142.              {          
  143.                  checkObject[i].checked = true;          
  144.                 break;          
  145.              }          
  146.          }          
  147.      }          
  148.               
  149. }          
  150.          
  151. /**       
  152. *选中指定值的select      
  153. *如:有一个名称为user的select      
  154. *     
  155. *     
  156. *调用这个方法selectOption("user","0")那么选项为0的选项就被选中      
  157. *                     
  158. *@name   String   select的名称      
  159. *@value String   判断时候选中的值      
  160. *@author fangtf      
  161. *@type void      
  162. */          
  163. function selectOption(name,value)          
  164. {          
  165.      var options = document.getElementsByName(name)[0].options;          
  166.     for (var i = 0; i < options.length; i++)           
  167.      {          
  168.         if(options[i].value === value)          
  169.          {          
  170.              options[i].selected = true;           
  171.             break;          
  172.          }          
  173.      }          
  174.          
  175. }      
 
原创粉丝点击