关于点击展开收缩

oscar_zhong 2013-09-26 02:11:04
如下图所示:当点击+/-的时候,如果展示有两行以上的就不行,如果是展示一行的就可以,即点击@AGATL(+/-)的时候就不能展开和收缩,如果点@AGLAX+/-的时候就可以展开和收缩,展开的行是动态的,如果数据库里有两条以上的记录展开就会相应有两行以上,如果有一条记录展开就会有一行,JS代码如下:

<SCRIPT>
function show(c_Str,imgg)
{if(document.all(c_Str).style.display=='none')
{document.all(c_Str).style.display='block';}
else{document.all(c_Str).style.display='none';
}}
</SCRIPT>

在+/-号哪个表格里定义onclick='show("aa")'
在展开显示出来的行哪定义ID=aa

如果点击@AGATL(+/-)就会提示JS错误,错误如下:
'document.all(...).style.display' 为空或不是对象




...全文
217 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xilaianzxsc 2013-09-26
  • 打赏
  • 举报
回复
同样学习了。向老师表示感谢
fzfei2 2013-09-26
  • 打赏
  • 举报
回复
引用 2 楼 oscar_zhong 的回复:
替换你这个代码有些效果,但在收缩的时候,如果有两行的只会收缩一行,麻烦帮忙再改一下,

 function show(c_Str,imgg)
{
 var es=document.all(c_Str);
 es=es.length?es:[es];
 var display=es[0].style.display=='none'?'block':'none';
 for(var i=0;i<es.length;i++) es[i].style.display=display;
}
oscar_zhong 2013-09-26
  • 打赏
  • 举报
回复
替换你这个代码有些效果,但在收缩的时候,如果有两行的只会收缩一行,麻烦帮忙再改一下,
fzfei2 2013-09-26
  • 打赏
  • 举报
回复
你这代码好像就IE上运行

 function show(c_Str,imgg)
{
 var es=document.all(c_Str);
 es=es.length?es:[es];
 var display=es[0].style.display=='none'?'block':'none';
 for(var i=0;i<es.length;i++) es[0].style.display=display;
}

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧