关闭

关于checkbox跟radio的js函数

标签: inputusertablejava
509人阅读 评论(0) 收藏 举报
java 代码
  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. }      
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:15674次
    • 积分:449
    • 等级:
    • 排名:千里之外
    • 原创:28篇
    • 转载:3篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档