<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script>
function showDetail(a)
{
//方案1,不修改rowspan,最后一行在隐藏状态下,表格就变形
var tr=document.getElementById("TR"+a)
var test=document.getElementById("test")
var table=document.getElementById("mytable")
if(tr)
{
tr.parentNode.removeChild(tr);//用dom操作阿
}
} </script>
</HEAD> <BODY>
<TABLE id="mytable" border=1>
<TR>
<TD><input type='button' onclick="showDetail(1)" value="showdetail"></TD>
<TD rowspan="6" id="test">我占六格</TD>
<TD>其他1</TD>
</TR>
<TR id="TR1">
<TD></TD>
<TD>明细1</TD>
</TR>
<TR>
<TD><input type='button' onclick="showDetail(2)" value="showdetail"></TD>
<TD>其他2</TD>
</TR>
<TR id="TR2">
<TD></TD>
<TD>明细2</TD>
</TR>
<TR>
<TD><input type='button' onclick="showDetail(3)" value="showdetail"></TD>
<TD>其他3</TD>
</TR>
<TR id="TR3">
<TD></TD>
<TD>明细3</TD>
</TR>
</TABLE>
</BODY>
</HTML>
你的table本身就有问题
第一行相当于有8个td
而下面的都是只有2个td
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script>
function showDetail(a)
{
//方案1,修改rowspan,除了最后一行,其他都变形
var tr=document.getElementById("TR"+a)
var test=document.getElementById("test")
var table=document.getElementById("mytable")
if(tr)
{
if(tr.style.display=="none")
{
tr.style.display="block"
}
else
{
tr.style.display="none"
}
}
if(a==3){
var rowspan=0
for(var i=0;i<table.rows.length;i++)
{
if(table.rows[i].style.display=="block"||table.rows[i].style.display=="")
rowspan++
}
test.rowSpan=rowspan
}
} </script>
</HEAD> <BODY>
<TABLE id="mytable" border=1>
<TR>
<TD><input type='button' onclick="showDetail(1)" value="showdetail"></TD>
<TD rowspan="6" id="test">我占六格</TD>
<TD>其他1</TD>
</TR>
<TR id="TR1">
<TD></TD>
<TD>明细1</TD>
</TR>
<TR>
<TD><input type='button' onclick="showDetail(2)" value="showdetail"></TD>
<TD>其他2</TD>
</TR>
<TR id="TR2">
<TD></TD>
<TD>明细2</TD>
</TR>
<TR>
<TD><input type='button' onclick="showDetail(3)" value="showdetail"></TD>
<TD>其他3</TD>
</TR>
<TR id="TR3">
<TD></TD>
<TD>明细3</TD>
</TR>
</TABLE>
</BODY>
</HTML>
不是就不用重设
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<script type="text/javascript">
function showDetail(a,b)
{if($(a).style.display=="none")
{
$(a).style.display="block"
$(b).style.display="block"
}
else
{
$(a).style.display="none"
$(b).style.display="none"
}
$("six").height=$("detail").clientWidth;
}
function $(id)
{
return document.getElementById(id);
}
</script><TABLE border=0 cellpadding="0" cellspacing="1" bgcolor="#666666" id="mytable">
<TR>
<TD bgcolor="#FFFFFF">
<div style="width:600px; float:left">
<div style="width:200px; float:left;">
<div style="width:200px;"><input type='button' onclick="showDetail(1,4)" value="showdetail"></div>
<div id="4" style="width:200px;"></div>
<div style="width:200px;"><input type='button' onclick="showDetail(2,5)" value="showdetail"></div>
<div id="5" style="width:200px;"></div>
<div style="width:200px;"><input type='button' onclick="showDetail(3,6)" value="showdetail"></div>
<div id="6" style="width:200px;"></div>
</div>
<div id="six" style="width:200px; float:left;">我占6格</div>
<div id="detail" style="width:200px; float:left;">
<div id="1" style="width:200px;">明细</div>
<div style="width:200px;">其他</div>
<div id="2" style="width:200px;">明细</div>
<div style="width:200px;">其他</div>
<div id="3" style="width:200px;">明细</div>
<div style="width:200px;">其他</div>
</div>
</div>
</TD>
</TR>
</TABLE>
</body>
</html>
<script>
var obj = {};
function showDetail(a){
var temp = event.srcElement;
var tr=document.getElementById("TR"+a)
var test=document.getElementById("test")
var table=document.getElementById("mytable")
if(tr){
obj["TR"+a] = tr;
tr.parentNode.removeChild(tr);
}else{
temp.parentNode.parentNode.insertBefore(obj["TR"+a]);
}
}
</script>
下面的代码就可以<script type="text/javascript">
function showDetail(a)
{
//方案1,不修改rowspan,最后一行在隐藏状态下,表格就变形
var tr=document.getElementById("TR"+a)
var test=document.getElementById("test")
var table=document.getElementById("mytable")
if(tr)
{
if(tr.style.display=="none")
{
tr.style.display="block"
}
else
{
tr.style.display="none"
}
}
}</script><TABLE border=0 cellpadding="1" cellspacing="1" bgcolor="#666666" id="mytable">
<TR>
<TD bgcolor="#FFFFFF"><input type='button' onclick="showDetail(1)" value="showdetail"></TD>
<TD rowspan="7" bgcolor="#FFFFFF" id="test">我占六格</TD>
<TD bgcolor="#FFFFFF">其他1</TD>
</TR>
<TR id="TR1">
<TD bgcolor="#FFFFFF"></TD>
<TD bgcolor="#FFFFFF">明细1</TD>
</TR>
<TR>
<TD bgcolor="#FFFFFF"><input type='button' onclick="showDetail(2)" value="showdetail"></TD>
<TD bgcolor="#FFFFFF">其他2</TD>
</TR>
<TR id="TR2">
<TD bgcolor="#FFFFFF"></TD>
<TD bgcolor="#FFFFFF">明细2</TD>
</TR>
<TR>
<TD bgcolor="#FFFFFF"><input type='button' onclick="showDetail(3)" value="showdetail"></TD>
<TD bgcolor="#FFFFFF">其他3</TD>
</TR>
<TR id="TR3">
<TD bgcolor="#FFFFFF"></TD>
<TD bgcolor="#FFFFFF">明细3</TD>
</TR>
<TR>
<TD></TD>
<TD></TD>
</TR>
</TABLE>