我尝试用JS获取复选框进行动作,为什么没有反应

<script>
window.onload=function()
{
var a=document.getElementsByTagName('input');
var b=document.getElementsByTagName('input').length;

for(var i=0;i<b;i++)
{
if(a[i].checked==true)
{
alert("a");
}
}
}

</script>

因为,你的代码是在窗口加载时执行的。这个时候,任何复选框都没有被选中。这段代码只会执行一次。当你点击选择复选框时,是什么都不会发生的。


正确的方法是注册一个事件。即在你点击复选框时,需要触发一段代码。

可以使用onclick属性:

<script type="text/javascript">
function checkit(elem){
    alert(elem.checked);
}
</script>
<input type="checkbox" name="foo" value="bar" onclick="checkit(this);" />


但比较推荐的做法是事件绑定。原生的javascript事件绑定比较麻烦,要考虑兼容性。这里给一个使用jQuery的例子:

<input id="myid" type="checkbox" name="foo" value="bar" />
<script type="text/javascript">
$x('#myid').click(function() {
    alert($(this)[0].click);
});
</script>

 

您的采纳就是我的动力!

温馨提示:答案为网友推荐,仅供参考
相似回答