java - 如何在jsp页面中根据名字显示名字

标签 java javascript ajax jsp servlets

我有一个页面editpatent.jsp,其中包含一个页面patentlist.jsp。当您运行 editpatent.jsp 时,它会显示数据库中存在的所有记录。我有一个下拉列表和一个搜索字段来指定搜索。因此,当我运行 editPatent.jsp 时,它会以存储在数据库中的方式显示所有记录。所以我想根据名称和显示对其进行排序。所以请告诉我如何做同样的事情。当您点击姓名、电子邮件或城市时,它会相应地排序

病人列表.jsp

<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="DB.*" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style type="text/css">
.evenRow{
                height: 50px;
                background-color: white;
                text-transform: none;
                text-shadow: none;
                color: black;
        }

        .evenRow:hover 
        {
            background-color: #C2FEF0;
        }

            .row{
                height: 50px;
                background-color: #E4E6E6;
                text-transform: none;
                text-shadow: none;
                color: black;
                }

            .row:hover {
            background-color: #C2FEF0;
            }
</style>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>

<table style="border-collapse: collapse;overflow-x: scroll; width:97%">
                            <tr style="background-color:grey;height:50px"> 
                                <th style="min-width: 100px">
                                    NAME    
                                </th>
                                <th style="min-width: 100px">
                                    CITY    
                                </th>
                                <th style="min-width: 100px">
                                    LAST VISIT  
                                </th>
                                <th style="min-width: 100px">
                                    MOBILE  
                                </th>
                                <th style="min-width: 100px">
                                    EMAIL   
                                </th>
                                <th style="min-width: 100px">
                                    STATUS  
                                </th>
                                <th style="min-width: 100px">
                                    VIEW    
                                </th>
                                <th style="min-width: 100px">
                                    EDIT    
                                </th>
                            </tr>
            <%
                DataBaseConnection db = new DataBaseConnection();
                Connection con = db.connet();
                PreparedStatement pt = con
                        .prepareStatement("select * from Patient");
                ResultSet rs = pt.executeQuery();

                String searchBy = request.getParameter("searchBy");
                String searchElement = request.getParameter("searchElement");

                int count = 0;
                int index = -1;
                boolean name = false;
                if ("city".equalsIgnoreCase(searchBy))
                    index = 9;//change the index to the index of the city
                else if ("firstName".equalsIgnoreCase(searchBy))
                    index = 1;
                else if ("lastName".equalsIgnoreCase(searchBy))
                    index = 2;
                else if ("name".equalsIgnoreCase(searchBy)) {
                    index = 1;
                    name = true;
                }

                while (rs.next()) {
                    if (searchElement == null
                            || ((searchElement.equals(rs.getString(index)) && !name) || (name && searchElement
                                    .equalsIgnoreCase(rs.getString(index) + " "
                                            + rs.getString(index + 1))))) {

                    if (count++ % 2 == 0) {
            %>

                                <tr class="evenRow" >
                                    <td>
                                        <%=rs.getString(1)%>
                                    </td>
                                    <td>
                                        <%=rs.getString(2)%>                                        
                                    </td>
                                    <td>
                                        <%=rs.getString(3)%>
                                    </td>
                                    <td>
                                        <%=rs.getString(4)%>                                        
                                    </td>
                                    <td>
                                        <%=rs.getString(5)%>                                        
                                    </td>
                                    <td>
                                        <%=rs.getString(6)%>                                        
                                    </td>
                                    <td>
<form action="getPatientDetails.jsp"><input type="hidden" name="hidden" value="<%=count%>"/><input type="submit" value="view"></form>
                                    </td>
                                    <td>
                                        <a onclick="renderEdit(<%out.println("edit");%>)"><%
                                            out.println("edit");
                                        %></a>
                                    </td>
                                </tr>   
                <%
                        } else {
                    %>
                                <tr class="row">
                                    <td>
                                                                                <%=rs.getString(1)%>

                                    </td>
                                    <td>
                                                                                <%=rs.getString(2)%>

                                    </td>
                                    <td>
                                                                                <%=rs.getString(3)%>

                                    </td>
                                    <td>
                                                                                <%=rs.getString(4)%>

                                    </td>
                                    <td>
                                                                                <%=rs.getString(5)%>

                                    </td>
                                    <td>
                                                                                <%=rs.getString(6)%>

                                    </td>
                                    <td>
                                        <a onclick="renderView(<%out.println("view");%>)"><%
                                            out.println("view");
                                        %></a>
                                    </td>
                                    <td>
                                        <a onclick="renderEdit(<%out.println("edit");%>)"><%
                                            out.println("edit");
                                        %></a>
                                    </td>
                                </tr>
                            <%
                                }
                    }
                }
                            %>
                        </table>
</body>
</html>

编辑病人.jsp

    <%@ page import="java.util.*" %>
    <!DOCTYPE html 
         PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html>
        <head>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
    <script>
    $(function() {
    $( "#datepicker" ).datepicker();
    });
        </script>
        <script type="text/javascript">
var request;

function getRequestObject()
{
    if (window.ActiveXObject) 
    {
        return(new ActiveXObject("Microsoft.XMLHTTP"));
    } 
    else if (window.XMLHttpRequest) 
    {
        return(new XMLHttpRequest());
    }
    else {
        return(null);
    }
}

function sendRequest() 
{
    request = getRequestObject();
    request.onreadystatechange = handleResponse;
    var address =  "patientList.jsp?searchBy=" + document.getElementById("searchBy").value + "&searchElement="+ document.getElementById("searchElement").value;
    request.open("GET", address, true);
    request.send(null);
}

function handleResponse() 
{
    if (request.readyState == 4 && request.status == 200)
    {
        document.getElementById("table").innerHTML = request.responseText;
    }
}
</script>

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Edit Patient</title>
        <link rel="stylesheet" type="text/css" href="styles.css" />
    </head>
    <body>
        <form id="f1" name="f1" method="post" onsubmit="ccheck();" >
        <script>
          $(document).ready(function() {
            $("#datepicker").datepicker();
          });
        </script>
        <section id="page" > <!-- Defining the #page section with the section tag -->
            <header > <!-- Defining the header section of the page with the appropriate tag -->
                    <hgroup align="center">
                        <h3>Edit Patient</h3>
                    </hgroup>
            </header>
            <section id="articles"> <!-- A new section with the articles -->
                <!-- Article 1 start -->
                <div class="line"></div>  <!-- Dividing line -->
                <article id="article1"> <!-- The new article tag. The id is supplied so it can be scrolled into view. -->
                    <div class="articleBody clear">
                        search:
                        <select id="searchBy">
                            <option value="lastName">Last Name</option>
                            <option value="firstName">First Name</option>
                            <option value="name">Name</option>
                            <option value="city">City</option>
                        </select>
                        <input id="searchElement"/> 
                        <input type="button" value="Search" onclick="sendRequest();"/>
                    </div>
                </article>
                        <div id="table" align="center">
                            <jsp:include page="patientList.jsp" />
                        </div>
                </article>
            </section>
            <footer> <!-- Marking the footer section -->
               <div class="line"></div>
               <a href="#" class="up">Go UP</a>
            </footer>   
        </section> <!-- Closing the #page section -->
            <!-- JavaScript Includes -->
            <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
            <script src="jquery.scrollTo-1.4.2/jquery.scrollTo-min.js"></script>
            <script src="script.js"></script>
      </form>
      </body>
    </html>

最佳答案

看看这个链接是否对您有帮助。

http://tympanus.net/codrops/2009/10/03/33-javascript-solutions-for-sorting-tables/

http://www.allmyscripts.com/Table_Sort/

如果您已经尝试过任何操作,请告诉我们

关于java - 如何在jsp页面中根据名字显示名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16161089/

相关文章:

java - Java 和 Android 中 Calendar 类的不同行为

javascript - 将函数调用保存到变量时为 "object is not a function"

javascript - 什么是 'this' 作为 JavaScript 函数中的参数

javascript - 在 xPages 部分刷新的自定义控件中加载 javascript 资源

php - Ajax 中的 RSS 阅读器 : Help with code, 有什么问题/缺失?

java - 如何定义一些奇怪的 java 进程的主机?

java - 如何让JToolBar覆盖窗口的整个高度?

javascript - Jquery Colorbox - 保留加载动画,直到单独的 ajax 内容准备好

java - 如何为每个执行的类生成 Log4j 日志

javascript - HTML 事件属性和使用 HTML DOM 分配事件有什么区别?