javascript +onclick+for循环+document.getElementsByName 点击显示隐藏

qq_39130762 2019-03-19 08:16:39
<script>
function show(cur){
var yemianall=["chanpin","xiaoshou","hezuo","qudao","caiwu","yunying","jichu","xitong","daoma"];
for(var i=0;i<yemianall.length;i++){
span=document.getElementsByName(yemianall[i]);
for(var x=0;x<span.length;x++){
span[x].style.display="none";
}
}
zu=document.getElementsByName(cur)
for(i=0;i<zu.length;i++){
if(zu[i].style.display==""){
zu[i].style.display="none";
}
else{
zu[i].style.display="";
}
}

}
</script>


怎样使点击同一组建时一次点击显示二次点击隐藏



<li>
<span onclick="show('chanpin')" class="navigation-menu-list" data-dl="0">
<a href="#">
<i class="fa fa-qrcode"></i> x产品管理+
<b class="fa fa-plus dropdown-plus"></b>
</a>
</span>
<div name="chanpin" style="display:none" class="dropdown-list animated fadeInDown">

<p><a href="#" onclick="toSendUrl('mblist.jsp')"><i class="fa fa-caret-right"></i>产品发布</a></p>
<p><a href="#" onclick="toSendUrl('mblist2.jsp')"><i class="fa fa-caret-right"></i>产品列表</a></p>

</div>

</li>

<li>
<span onclick="show('xiaoshou')" class="navigation-menu-list" data-dl="0">
<a href="#">
<i class="fa fa-bar-chart-o"></i> x销售管理+
<b class="fa fa-plus dropdown-plus"></b>
</a>
</span>
<div name="xiaoshou" style="display:none" class="dropdown-list animated fadeInDown">
<p><a href="#" onclick="toSendUrl('mblist.jsp')"><i class="fa fa-caret-right"></i>订单管理</a></p>
<p><a href="/sale/refundupdate/index.action"><i class="fa fa-caret-right"></i>退改申请</a></p>
<p><a href="/supply/order/index.action"><i class="fa fa-caret-right"></i>代客录入订单</a></p>
<p><a href="/supply/ordercust/index.action"><i class="fa fa-caret-right"></i>分销商销售统计</a</p>
<p><a href="/supply/cust/list.action"><i class="fa fa-caret-right"></i>供应商销售统计</a></p>
</div>
</li>


...全文
562 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_39130762 2019-03-28
  • 打赏
  • 举报
回复
感谢各位的帮助
F_satr 2019-03-26
  • 打赏
  • 举报
回复
//看你的dom结构和需求是点击li下的直接span,点击的这个li下的直接div显示隐藏切换
//首先找到所有的li下的直接span
const span=document.querySelectorAll('ul>li>span');
span.forEach(item=>{
//每个span绑定点击事件
item.onclick=function () {
//判断如果当前点击的span的下一个兄弟元素即div,隐藏就让他显示,否则隐藏
item.nextElementSibling.style.display=='none'?item.nextElementSibling.style.display='block':item.nextElementSibling.style.display='none'
}
})
前端日记_林 2019-03-22
  • 打赏
  • 举报
回复
display 没有给值?
qq_42966289 2019-03-20
  • 打赏
  • 举报
回复
建一个数组 来记录菜单的点击状态

87,910

社区成员

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

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