
javascript关于点击代替checkbox选中的问题 5
<html><metahttp-equiv="Content-Type"content="text/html;charset=UTF-8"><head><scriptla...
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<head>
<script language="javascript">
function myCheckbox(obj,thisobj)
{
var Checkbox = document.getElementById(obj);
Checkbox.checked = true;
$('#graphic').attr('checked',true);
}
</script>
</head>
<body>
<input type="checkbox" id="graphic"> <a href="javascript:;" class="graphic" onclick="myCheckbox('graphic',this);">点击这里checkbox被选中,再点击取消选中</a>
</body>
</html>
现在这个代码简单地说就是点击<a>标签checkbox会被选中,但是再点击则checkbox不会被取消。我想实现一个效果是点击<a>显示checkbox选中效果,再点击<a>取消checkbox选中。不要用label,用上面给的js改编一下就好,或者其他的js达成效果即可。请大神解答 展开
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<head>
<script language="javascript">
function myCheckbox(obj,thisobj)
{
var Checkbox = document.getElementById(obj);
Checkbox.checked = true;
$('#graphic').attr('checked',true);
}
</script>
</head>
<body>
<input type="checkbox" id="graphic"> <a href="javascript:;" class="graphic" onclick="myCheckbox('graphic',this);">点击这里checkbox被选中,再点击取消选中</a>
</body>
</html>
现在这个代码简单地说就是点击<a>标签checkbox会被选中,但是再点击则checkbox不会被取消。我想实现一个效果是点击<a>显示checkbox选中效果,再点击<a>取消checkbox选中。不要用label,用上面给的js改编一下就好,或者其他的js达成效果即可。请大神解答 展开
1个回答
展开全部
你的代码中既用了原生的JavaScript,也用了jQuery,究竟用哪种啊?你必须选一样,否则要实现你的目的就会发生冲突了。下面是只用原生JavaScript的方法:
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<head>
<script language="javascript">
function myCheckbox(obj,thisobj)
{
var Checkbox = document.getElementById(obj);
Checkbox.checked = !Checkbox.checked;
}
</script>
</head>
<body>
<input type="checkbox" id="graphic"> <a href="javascript:;" class="graphic" onclick="myCheckbox('graphic',this);">点击这里checkbox被选中,再点击取消选中</a>
</body>
</html>
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<head>
<script language="javascript">
function myCheckbox(obj,thisobj)
{
var Checkbox = document.getElementById(obj);
Checkbox.checked = !Checkbox.checked;
}
</script>
</head>
<body>
<input type="checkbox" id="graphic"> <a href="javascript:;" class="graphic" onclick="myCheckbox('graphic',this);">点击这里checkbox被选中,再点击取消选中</a>
</body>
</html>
追问
如果两个以上 点击这里checkbox被选中,再点击取消选中呢。id名称都相同的情况下怎么实现。
追答
ID是不可以相同的(换句话说它是具有唯一性的),所以多个input可以设为不同的ID,即:
点击这里checkbox被选中,再点击取消选中
点击这里checkbox被选中,再点击取消选中
点击这里checkbox被选中,再点击取消选中
……
还有一种方法是把对应的input和a放到同一个父节点中,然后通过父节点来进行控制:
function myCheckbox(thisobj)
{
var Checkbox = thisobj.parentNode.getElementsByTagName("input")[0];
Checkbox.checked=!Checkbox.checked;
}
点击这里checkbox被选中,再点击取消选中
点击这里checkbox被选中,再点击取消选中
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询