使用event对象,应该可以解决这个问题
在javascript中事件模型有一种就是冒泡方式
你可以试试
在javascript中事件模型有一种就是冒泡方式
你可以试试
解决方案 »
- 求方法。自己域名的jsp,想只允许被指定的域名iframe使用。
- 用javascript设置表格中行的位置
- javascript 自动登陆网站的问题
- 把当前页面保存为mht格式的代码怎么写?
- 怎么在html的<img src="">src的值这里调用js方法或变量获取图片地址?
- js获取当天是本月的第几个周四
- 急!急!急! 急!急!急!关于JavaScript的问题?
- 还是赋值问题
- 谁能给我讲讲这是什么意思? 不急,在线等,明白后立即结贴!
- :高手过招::如何在一个<input type=text>内,按一键盘一个键就填入自定的内容
- 如何在单击TD时,将TD中的CheckBox选中?
- 关于隐藏域 赋值的问题,很头痛,在线等啊!
这个函数本身就有问题,你传入对象obj,找孩子节点,实现的checkbox状态的变更。
但是这个函数只适合单击TD,不适合单击checkbox。方法1:从新写这个函数。方法2:再新写一个函数。
<script type="text/javascript">
function trOclick(obj){
var a=obj
if(obj.type=="checkbox"){
a=obj
}
if(obj.children[0].type=="checkbox"){
a=obj.children[0]
}
if(a.checked==true){
a.checked=false;
}else{
a.checked=true;
}
}
</script>
要么你的checkbox的click事件别和tr的
调同一个函数,再写一个
if(flag==0)
{
if(obj.children[0].checked==true){
obj.children[0].checked=false;
}else{
obj.children[0].checked=true;
}
}
if(flag==1)
{
if(obj.checked==true){
obj.checked=false;
}else{
obj.checked=true;
}
}
} 调用这个函数的时候, 如果是单击TD,flag为0,单击checkbox flag为1。怎么调用函数不用我说了吧?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script>
function Fun(oTd){
var oChk = oTd.previousSibling.childNodes[0].checked;
oTd.previousSibling.childNodes[0].checked= !oChk;
} </script>
</HEAD> <BODY>
<TABLE border='1' width='50%'>
<TR>
<TD><INPUT TYPE="checkbox" NAME="aa" ></TD>
<TD onclick="Fun(this)">bb</TD> </TR>
<TR>
<TD><INPUT TYPE="checkbox" NAME="bb"></TD>
<TD onclick="Fun(this)">ee</TD>
</TR>
</TABLE>
</BODY>
</HTML>
obj.children[0].checked=obj.children[0].checked ? false : true;
}
效果和直接点击checkbox一样了,不知道这样可能适合楼主
<html> <script type="text/javascript">
function setFocus()
{
var obj = document.getElementById('chk');
if(event.srcElement != obj)
{
if(obj.checked)
obj.checked = false;
else
obj.checked = true;
}
}
</script>
</head>
<body>
<form>
<table border="1" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="100" onclick="setFocus()"><input type="checkbox" id="chk" />复选框</td>
</tr>
</table>
</form>
</body>
</html>
function trOclick(obj)
{
if(obj==event.srcElement)
{
if(obj.children[0].checked==true)
{
obj.children[0].checked=false;
}
else
{
obj.children[0].checked=true;
}
}
}