修改为
if (isChecked.value == "false") {}
var isChecked = document.getElementById("IsChecked")
还是dom对象,应该要获取他的值(isChecked.value),然后和false对比才对
楼上说的对,我写了个简单的例子,参照一下吧:<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title></title>
<script type="text/javascript">
function show()
{
//用于保存结果
var result = '您的爱好有:'
var cks = document.getElementsByTagName("input")//获取页面上所有的input标签
for(var i = 0i <cks.lengthi++)//便利所有标签
{
var ck = cks[i]//获取当前input元素
if (ck.type== "checkbox")//判断是否checkbox(复选框)
{
if (ck.checked)//注意:这里使用的checked属性判断该复选框是否选中
{
result = result + ck.value + ","//如果选中,添加到结果中
}
}
}
alert(result)//显示结果
}
</script>
</head>
<body>
<form>
您有哪些爱好? <br />
<input type="checkbox" value="足球"/>足球 <br/>
<input type="checkbox" value="音乐"/>音乐 <br/>
<input type="checkbox" value="游戏"/>游戏 <br/>
<input type="checkbox" value="旅游"/>旅游 <br/>
<input type="checkbox" value="阅读"/>阅读 <br/>
<input type="button" value="查看结果" onclick="show()" />
</form>
</body>
</html>
举个例子,比如如下是HTML的结构:
这里推荐使用jQuery库,比较方便。以下是代码:
大致思路就是:先利用name属性值获取checkbox对象,然后循环判断checked属性。(true表示被选中,false表示未选中)
具体解释一下:
首先用document.getElementsByName()这个方法,通过input标签的name属性将input元素获取,并存进obj这个变量值中。然后建一个check_val的数组,通过for循环将input标签的value值存入数组中,这样就可以获取checkbox的选中的多个值。