下面是我在html做测试时一切正常!function showhidediv(){if(document.getElementById("id6").style.display=='block')
{
document.getElementById("id6").style.display='none';
document.getElementById("zk").value="展开";
}
else
{
 document.getElementById("id6").style.display='block';
 
 document.getElementById("zk").value="收缩";
 }
}
<input type="button" value="展开" onclick='showhidediv11();' id="zk" />
<div id="id6" style="display:none;">
  <ul>   <li>
   6666666666666666666666666666
   </li>
   <li>
   77777777777777777777777777777
   </li>     <li>
   88888888888888888888888888888
   </li>
  </ul>
</div>
把js代码放进asp.net时候 只折叠了一个 <li> 而且其他 div 都只折叠 前面的数据
asp.net<asp:DataList ID="DataList11" runat="server"><ItemTemplate> <ul style="list-style-type:none; ">
        
 <li>
     <span>   <%#Eval("Hh_MeesageTitle") %>
     
         <input id="zk" type="button" value="展开" onclick="showhidediv()"/>
     </span></li><asp:DataList ID="DataList5" runat="server">
            <ItemTemplate>                <div id="id6" >
               <ul style="list-style-type:none;">
              <li ><%# Eval("Hx_Meesage")%>
              
              </li>
               <li>
               回复人:<%# Eval("Hx_User")%> 发表时间:<%#Eval("Hx_Time")%>&nbsp;&nbsp;
               </li>
              
              <li style="border-bottom: 1px dotted #CCC; padding-top:8px;"></li>
              </ul>
              </div>
              
              </ItemTemplate>
              </asp:DataList>                 </ul>
</ItemTemplate>
              </asp:DataList>
div id6绑定的是循环读取的数据 有很多条,我想点击展开时候 展开 里层DataList5的数据,否则隐藏,用上面的方法却不行,请大家帮我看看!谢谢!

解决方案 »

  1.   

    你必须
     <input id="zk<%#Container.ItemIndex %>" type="button" value="展开" onclick="showhidediv(<%#Container.ItemIndex %>)"/>
    <div id="id6<%#Container.ItemIndex %>" >传参数进去
    function showhidediv(xxx){if(document.getElementById("id6"+xxx).style.display=='block')
    {
    document.getElementById("id6"+xxx).style.display='none';
    document.getElementById("zk"+xxx).value="展开";
    }
    else
    {
     document.getElementById("id6"+xxx).style.display='block';
     
     document.getElementById("zk"+xxx).value="收缩";
     }
    }
      

  2.   

    楼上说了,其实你执行完看一下生成的HTML"源文件"就知道错在哪了
      

  3.   

    谢谢 【孟子E章】!我想问下,如果是jsp网站的话 这个 <%#Container.ItemIndex %> 应该写成什么才可以递增循环,谢谢!~
      

  4.   

    是不是ID重复的问题检查JS   写出具体行
      

  5.   

    问题已经解决!我是说 jsp 没有这个绑定 <%#Container.ItemIndex %> 应该替换什么才好?