无法使用javascript隐藏标记,无法将scriptlet编写为id

时间:2014-02-18 13:24:15

标签: java javascript jsp

这是我的jsp页面

      <%@page import="java.util.List"%>
      <%@page import="org.hibernate.cfg.Configuration"%>
      <%@page import="org.hibernate.Session"%>
      <%@page import="org.hibernate.SessionFactory"%>
       <%@page contentType="text/html" pageEncoding="UTF-8"%>
        <!DOCTYPE html>
         <html>
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
              <title>JSP Page</title>

        <script>
           function page_hide_show()
           {
         for(var i=8;i<22;i++)
            {alert(i)
           document.getElementsByClassName(i).style.display='none';
            }
         }
             </script>
            </head>
           <body onload="page_hide_show()">
                <% 
         SessionFactory sessionfactory=null;
        Session Listsession=null ;
           sessionfactory=new Configuration().configure().buildSessionFactory();
              Listsession = sessionfactory.openSession();
           String name="";
            String age="";
            String address="";
            String phone_no="";
             try
               {
          int c=0;
          if(request.getAttribute("c")!=null)
         {

          c=Integer.parseInt(request.getAttribute("c").toString());
                }




         org.hibernate.Query query=Listsession.createQuery("select name,age,address,phone_number from paging order by auto_inc"); 
          query.setFirstResult(c);
           query.setMaxResults(10);
          List check1 =query.list();
        java.util.Iterator on=check1.iterator();
              while(on.hasNext())
           {
           Object oo[]=(Object[])on.next();

            name=(String)oo[0].toString().trim();
            age=(String)oo[1].toString().trim();
            address=(String)oo[2].toString().trim();
           phone_no=(String)oo[3].toString().trim();


             %>
                <div align="center" style="border-bottom:1px solid #ccc "> Name &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;                   <input type="text" name="text" value="<%=name %> " disabled="disabled">
           <br><br>


           </div>
           <%        }

            }       
              catch(Exception ee){
                out.print(ee.getMessage());

           }
            %>

           <center>  <img src="fgfdg.png"> </center>
          <table align="center">
             <tr>
             <!--    <td><a href="Pagecount?c=0">First Page</a></td>  -->
         <%
        int value_counter=0;
         int pagecount=0;
        long counters=0;
           try{
                org.hibernate.Query query=Listsession.createQuery("select count(*) from paging order by auto_inc"); 

          List check1 =query.list();
           java.util.Iterator on=check1.iterator();
       while(on.hasNext())
        {
        Object oo=on.next();

              counters=((Number)oo).longValue();


            }}

          catch(Exception e)
         {
             out.println(e);
          }  

        int count=(int)counters/10; 
        int Counter_in_int=count*10;
        double xyz=Counter_in_int-counters;
        if(xyz>=0)
        {
          for(int i=0;i<count;i++)
          {

             pagecount++; 
            %>  
                  <td class="<%=pagecount%>"><a href="Pagecount?c=<%=value_counter %>"><%= pagecount%></a></td> 
                 <% value_counter=value_counter+10;} }
              else
            {
              %>

              <%
               for(int i=0;i<=count;i++)
              {
           pagecount++; 
          %> 
             <td  class="<%=pagecount%>"><a href="Pagecount?c=<%=value_counter %>" ><%= pagecount%></a></td> 
             <% value_counter=value_counter+10;} }
            %>
            <!--  <td><a href="Pagecount?c=">Last Page</a></td>  -->
            </tr>
         </table>

         </body>
         </html>

所以我的问题是 在上面的代码中我试图用classname从8到21隐藏td标签,但我无法这样做。我认为我的javascript函数是正确的。当我给id作为
时                 &LT; td id =“&lt;%= pagecount%&gt;”&gt;
我无法这样做。 请告诉我如何在此代码中隐藏带有类名从8到21的td。这是我的javascript函数错误。

1 个答案:

答案 0 :(得分:1)

你的问题是document.getElementsByClassName(something)返回Array(元素中的复数)。这意味着你必须有这样的东西:

var list = document.getElementsByClassName(class_name);
for (i = 0; i < list.length; i++) alert(list[i]);

但是,我看到你只有一个每个班级名称。在这种情况下,您应该执行以下操作:document.getElementsByClassName(i)[0].style.display = 'none'

希望这很有用:)