`

JS对表单控件check,select,radio赋选中值

 
阅读更多

 


JS对表单控件check,select,radio赋选中值

/** 
* 全选的所有指定名称的checkbox 
*@state 全选的checkbox的状态 
*@name 表格中的所有checkbox的名称 
*@author fangtf 
*@type void 
*/ 
function selectAll(state,name) { 
var ids = document.getElementsByName(name); 
for (var i = 0; i < ids.length; i++) 

ids[i].checked = state; 



/** 
* 全选的所有指定id名称的同名checkbox 
*@state 全选的checkbox的状态 
*@name 表格中的所有checkbox的名称 
*@name 表格中的所有checkbox的id 
*@author fangtf 
*@type void 
*/ 
function selectAllCheckboxByID(state,name,id) { 
var ids = document.getElementsByName(name); 
for (var i = 0; i < ids.length; i++) 

if(ids[i].id == id) 

ids[i].checked = state; 





/** 
* 全选页面上所有的checkbox 
*@state 全选的checkbox的状态 
*@author fangtf 
*@type void 
*/ 
function selectAlls(state) 

var inputs = document.getElementsByTagName("input"); 
for(var i =0;i<inputs.length;i++) 

if(inputs[i].type == "checkbox") 

inputs[i].checked =state; 





/** 
*得到鼠标所单击的行 
*@type Object 
*/ 
function GetRow(oElem) { 
while (oElem) { 
if (oElem.tagName.toLowerCase() == "tr" && oElem.parentElement.tagName.toLowerCase() == "tbody") { 
return oElem; 

if (oElem.tagName.toLowerCase() == "table" || oElem.tagName.toLowerCase() == "th") { 
return false; 

oElemoElemoElem = oElem.parentElement; 



/** 
* 全选当前行的checkbox 
*@state 全选的checkbox的状态 
*@author fangtf 
*@type void 
*/ 
function selectRowCheckbox(state) 

var row = GetRow(window.event.srcElement); 
var cells = row.childNodes; 
for(var i=0;i<cells.length;i++) 

var cell = cells[i].childNodes[0]; 
if(cell.tagName == "INPUT") 

cell.checked = state; 




/** 
*选中指定值的Radio 
*如:有两个radio, 
*第一个的name="ids",value="1" 
*第二个的name="ids",value="2" 
*调用方法selectRadio("ids","1"); 
*那么数值为1的Radio将被选中 
*@name radio的名称 
*@value radio的值 
*@author fangtf 
*@type void 
*/ 
function selectRadio(name,value) { 
var radioObject = document.getElementsByName(name); 
if(value === "") 

radioObject[0].checked = true; 
return; 

for (var i = 0; i < radioObject.length; i++) 

if(radioObject[i].value == value) 

radioObject[i].checked = true; 
break; 





/** 
*选中指定值的checkbox 
*如:有两个checkbox, 
*第一个的name="ids",value="1" 
*第二个的name="ids",value="2" 
*第三个的name="ids",value="3" 
*调用这个方法selectCheckbox("ids","1,2")那么数值为1,2的checkbox将被选中 

*@name 要选中的checkbox数组的名称 
*@value 判断时候选中的值 
*@author fangtf 
*@type void 
*/ 
function selectCheckbox(name,value) { 
var checkObject = document.getElementsByName(name); 
var valuevaluevalues = value.split(","); 
for(var j = 0; j < values.length; j++) 

for (var i = 0; i < checkObject.length; i++) 

if(checkObject[i].value == values[j]) 

checkObject[i].checked = true; 
break; 






/** 
*选中指定值的select 
*如:有一个名称为user的select 
*<option value="0"></option> 
*<option value="1"></option> 
*调用这个方法selectOption("user","0")那么选项为0的选项就被选中 

*@name String select的名称 
*@value String 判断时候选中的值 
*@author fangtf 
*@type void 
*/ 
function selectOption(name,value) 

var options = document.getElementsByName(name)[0].options; 
for (var i = 0; i < options.length; i++) 

if(options[i].value === value) 

options[i].selected = true; 
break; 



}

 

 

 

JS实现CheckBox多项选择值传递

 

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>多项选择</title>
</head>

<body>
<center>
<table width="460" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td>
 <form name="ck" Method="" action=""> 
<input type="hidden" name="allchecked"><!--用于賦值--> 
全选:<input type="checkbox" id="checkAll"&#111nclick="checkall()" /> 
多项选择框列表: 
<input type="checkbox" name="cb" &#118alue="1"/> 
<input type="checkbox" name="cb" &#118alue="2"/> 
<input type="checkbox" name="cb" &#118alue="3"/>
<input type="checkbox" name="cb" &#118alue="4"/>
<input type="checkbox" name="cb" &#118alue="5"/>
<input type="checkbox" name="cb" &#118alue="6"/> 
<input name="Submit" type="button" &#118alue="提交" &#111nclick="notcheckall()"> 
</form> 
 </td>
  </tr>
</table>
</center>

<script language="&#106avascript"> 
//全选或全部不选 
function checkall(){ 
 var isChecked; 
 if(document.ck.checkAll.checked==true)
  {
   isChecked=true;
   var elements=document.ck.elements; 
   var counter=elements.length; 
   var seltext=""; //定义变量存储所有选择项 
   for(i=2;i<counter;i++){ 
     var element=elements[i]; 
     if(element.type=="checkbox"){ 
     element.checked=isChecked; 
     seltext = seltext+element.&#118alue+","; //进行连接
    } 
   } 
   document.ck.allchecked.&#118alue = seltext.substr(0,seltext.length-1); //将值赋给form中的allchecked控件
   alert(document.ck.allchecked.&#118alue); 
  }
 if(document.ck.checkAll.checked==false)
 {
  isChecked=false;
  var elements=document.ck.elements; 
  var counter=elements.length; 
  for(i=0;i<counter;i++){ 
    var element=elements[i]; 
    if(element.type=="checkbox"){ 
     element.checked=isChecked; 
    } 
   }
   document.ck.allchecked.&#118alue="";
   alert(document.ck.allchecked.&#118alue);
 }

 
//选择部分
function notcheckall(){ 
 var elements=document.ck.elements; 
 var counter=elements.length; 
 var seltext=""; 
 for(i=0;i<counter;i++){ 
  var element=elements[i]; 
  if((element.type=="checkbox")&&(element.checked==true)){ 
  seltext = seltext+element.&#118alue+","; //这是jscript中的变量而已
  } 
 } 
 document.ck.allchecked.&#118alue = seltext.substr(seltext,seltext.length-1);//賦值 
 alert(document.ck.allchecked.&#118alue);

</script> 
</body>
</html>

 

 

分享到:
评论
2 楼 marui5688 2013-01-21  
  •  
1 楼 marui5688 2013-01-21  
[flash=200,200][/flash][img][/img]

相关推荐

Global site tag (gtag.js) - Google Analytics