读书人

请圣人指点,为什么radio是选中状态但是

发布时间: 2013-12-06 17:56:43 作者: rapoo

请高人指点,为什么radio是选中状态但是判断checked总是false???
我动态生成了radio,代码如下
"<span ><input id='"+ tmp1+ "' name='"+ index+ "' type='radio' value='1' " + (cmp == 1 ? "checked=true":"")+ ">主要</input></span>"

"<span ><input id='"+ tmp2+ "' name='"+ index+ "' type='radio' value='0' "+ (cmp == 0 ? "checked=true": "") + ">次要</input></span>"

以上代码是在一个for循环内生成的,即每两个radio是在一行内,id不同,name相同,并且根据变量cmp设置了初始选中状态

这是我获得radio的checked的代码,axisId是上面的"主要"radio的id值

var x==document.getElementById(axisId);
if (x.checked)
{
.......
}
我发现即使radio初始状态就是选中的情况下,checked还是为false,郁闷中...

[解决办法]
var x==document.getElementById(axisId);

改成这样试试
var x = document.getElementById("axisId");
[解决办法]
你的axisId有问题罗,获取到的对象就是没有勾选的

var s=''
for (var index = 0; index < 2; index++) {
cmp = index;
s += "<span ><input id='" + index + "_1' name='" + index + "' type='radio' value='1' " + (cmp == 1 ? "checked=true" : "") + ">主要</input></span>"
+ "<span ><input id='" + index + "_2' name='" + index + "' type='radio' value='0' " + (cmp == 0 ? "checked=true" : "") + ">次要</input></span>"
}
document.write(s)

var x = document.getElementById('0_2');
alert(x.checked)//true
x = document.getElementById('1_1');
alert(x.checked)//true

读书人网 >JavaScript

热点推荐