首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在通过SQL loader加载数据并在JSP上显示时合并空单元格

问如何在通过SQL loader加载数据并在JSP上显示时合并空单元格
EN

Stack Overflow用户
提问于 2019-06-04 03:04:42
回答 1查看 31关注 0票数 0

​

代码语言:javascript
复制
h1{
                    text-align: center;
                    color: #ff4d4d;
                    font-size: 70px;
                  }
                

                table {
        
 		border-color: black;
 		border-width: 5px;
                overflow: hidden;
                border-collapse:collapse;
                width: 100%
                
                }
                
                
		th {
			
                        border-color: black;
			font-family: monospace;
                        position: relative;
                        background-color: #ff4d4d;
                        color: #ffffff;
                        background-clip: padding-box;
                       
                        
                        
		}
                td{
                    border-bottom: none;
                }
                td #noborder {
                    border-bottom: none;
                }
            
/*                tr:hover {
                            background-color: #ffcccc;
                          
                          }

                          td{
                            position: relative;
                            border-bottom: none;
                          }
                          td:hover::after,
                          th:hover::after {
                            content: "";
                            position: absolute;
                            background-color: #ffcccc;
                            left: 0;
                            top: -5000px;
                            height: 10000px;
                            width: 100%;
                            z-index: -1;
                          }*/
                          .dropbtn {
                            background-color: #4CAF50;
                            color: white;
                            padding: 16px;
                            font-size: 16px;
                            border: none;
                          }

                          .dropdown {
                            position: relative;
                            display: inline-block;
                          }

                          .dropdown-content {
                            display: none;
                            position: absolute;
                            background-color: #f1f1f1;
                            min-width: 160px;
                            box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
                            z-index: 1;
                          }

                          .dropdown-content a {
                            color: black;
                            padding: 12px 16px;
                            text-decoration: none;
                            display: block;
                          }
                          
                          td:empty{
                              border-bottom: none;
                              border-top: none;
                          }
                          
                          .dropdown-content a:hover {background-color: #ddd;}

                          .dropdown:hover .dropdown-content {display: block;}

                          .dropdown:hover .dropbtn {background-color: #3e8e41;}
代码语言:javascript
复制
html>
<head>
<h1> f1 </h1>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>OSCSUI</title>
<%@page import="java.sql.*" %>


    
</head>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script>

</script>

<body>

</body>
<form method="post">

<table id="table1" border ='1' cellpadding="10">
<tr>
<th>T1</th>
<th>T2</th>
<th>T3</th>
<th>T4</th>
<th>T5</th>
<th>T6</th>
<th>T7</th>
<th>T8</th>
<th>T9</th>
<th>T10</th>
<th>T11</th>
<th>T12</th>
<th>T13</th>
<th>T14</th>
<th>T15</th>
    </tr>
<%
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE ");

while(rs.next())
{
%>
    <tr><td><%=rs.getString("T1") == null ? "" : rs.getString("T1") %></td>
        <td><%=rs.getString("T2") == null ? "" :rs.getString("T2")%></td>
        <td><%=rs.getString("T3") == null ? "" :rs.getString("T3")%></td>
        <td><%=rs.getString("T4") == null ? "" :rs.getString("T4")%></td>
        <td><%=rs.getString("T5") == null ? "" :rs.getString("T5")%></td>
        <td><%=rs.getString("T6")== null ? "" : rs.getString("T6")%></td>
        <td><%=rs.getString("T7")== null ? "" :rs.getString("T7") %></td>
        <td><%=rs.getString("T8") == null ? "" :rs.getString("T8")%></td>
        <td><%=rs.getString("T9")== null ? "" :rs.getString("T9") %></td>
        <td><%=rs.getString("T10") == null ? "" :rs.getString("T10")%></td>
        <td id="noborder"><%=rs.getString("T10")== null ? "" :rs.getString("T10") %></td>  
        <td><%=rs.getString("T12")== null ? "" :rs.getString("T12") %></td>
        <td><%=rs.getString("T13") == null ? "" :rs.getString("T13")%></td>
        <td><%=rs.getString("T14") == null ? "" :rs.getString("T14")%></td>
        
        <td>
                <div class="dropdown">
                  <button class="dropbtn">T15</button>
                  <div class="dropdown-content">
                    <a href="#">TASK 1</a>
                    <a href="#">TASK 2</a>
                  
                  </div></div>  </td>
        
               
    </tr>
        <%

}
%>
    </table>
    <%
    rs.close();
    stmt.close();
    conn.close();
    }
catch(Exception e)
{
    e.printStackTrace();
    }




%>

 

</form>

</html>

​

我将我的数据放在.CSV文件中。我使用SQL Loader将其加载到数据库中,现在JSP页面上的输出也有空单元格。我想做的基本上是合并空单元格并将其显示为单列,但是我无法这样做,因为它不是固定的,并且我必须在每列中合并不同数量的行。

我已经尝试了td:empty的CSS属性,但是它没有起到作用,因为我说过每次的数据都是不同的,所以我正在寻找一些可以相应地合并行的东西。请建议我该怎么做。

编辑:我已经附加了我的代码,要点是基本上我必须组合每列不同数量的行,这是不固定的,因为我从CSV中拉数据,所以它一直在变化。

EN

回答 1

Stack Overflow用户

发布于 2019-06-04 03:36:19

从代码判断,数据库中每行有15个元素。

因此,您需要将所有这些列读取到单个数据结构中,例如长度为15的字符串数组。

之后,对数据结构进行迭代:如果列不为空,则将其表示放入jsp中。

否则,继续迭代,直到到达下一个非空元素或行尾。别忘了数一下那些空的。

如果到达末尾或找到下一个,则使用适当的colspan输出(空)列,重置计数器值,然后继续处理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56433185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档