单选框radio:
function getRadio(name) {
var els = document.getElementsByName(name);
for(i=0;i<els.length;i++){
if(els[i].checked){
return els[i].value;
}
}
return false;
}
var els = document.getElementsByName(name);
for(i=0;i<els.length;i++){
if(els[i].checked){
return els[i].value;
}
}
return false;
}
function setRadio(name,value){
els = document.getElementsByName(name);
for(var i=0; i<els.length; i++){
if(els[i].value == value){
els[i].checked = true;
break;
}
}
}
els = document.getElementsByName(name);
for(var i=0; i<els.length; i++){
if(els[i].value == value){
els[i].checked = true;
break;
}
}
}
复选框checkbox,同名复选框的名字格式:name[]
function getCheckbox(name){
var els = document.getElementsByName(name);
for(i=0;i<els.length;i++){
if(els[i].checked){
var value += ","+els[i].value;
}
}
var els = document.getElementsByName(name);
for(i=0;i<els.length;i++){
if(els[i].checked){
var value += ","+els[i].value;
}
}
if(value) return value.substr(1);
else return false;
}
}
function setCheckbox(name,valStr){
//同名复选框的值以‘,’分隔;
els = document.getElementsByName(name);
for(var i=0; i<els.length; i++){
if(hasValue(valStr,els[i].value)){
els[i].checked = true;
}else{
els[i].checked = false;
}
}
}
//同名复选框的值以‘,’分隔;
els = document.getElementsByName(name);
for(var i=0; i<els.length; i++){
if(hasValue(valStr,els[i].value)){
els[i].checked = true;
}else{
els[i].checked = false;
}
}
}
function hasValue(str,val){
vals = str.split(",");
for(var i=0; i<vals.length; i++){
if(vals[i] == val){
return true;
}
}
return false;
}
vals = str.split(",");
for(var i=0; i<vals.length; i++){
if(vals[i] == val){
return true;
}
}
return false;
}
setRadio() 和setCheckbox() 可以用于后台
比如一份调查表,后台查看用户投票的时
侯,可以用到:
setRadio("Ques_01",'2');
setCheckbox("Ques_02[]","1,3");
setCheckbox("Ques_02[]","1,3");
第一句表示第一题为单选题,用户选择了值为2的选项,第二句表示第二题为多选题,用户选择了值为1和3的选项。这两句将重现这种效果。
转载于:https://blog.51cto.com/xieyu/48590