javascript中的一个问题
function check(){
if(document.getElementsByName["ispublic"].checked==true)
{
document.getElementsByName["ispublic"].value='是';
alert('ok');
}else
{
document.getElementsByName["ispublic"].value='否';
alert('no');
}
}
我用这个语句想给checkbox赋值,但是在action中怎么获取的总是on,而我给的值怎么就没有赋上了!希望各位帮帮我吧!谢谢了!
------解决方案--------------------document.getElementsByName["ispublic"].checked 这是错误的写法。
===》document.getElementsByName("ispublic")
function check(){
var cb = document.getElementsByName("ispublic");
for(var i=0;i<cb.length;i++){
if(cb[i].checked == true){
cb[i].value = 'value';
}
}
}
不知道你是不是要这种效果。
------解决方案--------------------document.getElementsByName["ispublic"]得到的是所有的checkbox对象。
document.getElementsByName["ispublic"].checked 不会生效。
应该写成下面这样:
function check(){
var arr = document.getElementsByName("ispublic");
for(var i = 0;arr < cb.length; i++) {
if (arr [i].checked) {
cb[i].value = '是';
alert('ok');
} else {
cb[i].value = '否';
alert('no');
}
}
}