将具有选择属性类型onchange = this.form.submit()的jsp形式的值传递给另一个jsp

时间:2018-07-04 12:37:44

标签: javascript html5 jsp form-processing

</head>
    <body>
        <h3 align="center">Associates by Manager</h3>
        <div class="container">
            <form action="retrieve.jsp" method="post">
            <div class="col-sm-5">
            <strong>List by Manager:</strong>
                <select class="form-control" name="mgrid" data-width="150px" onchange="this.form.submit()";>    
                        <option value="0">Select Manager</option>
                <%
                 try
                {
                    Class.forName("com.mysql.jdbc.Driver").newInstance();
                    Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/newschema","root","root");
                    Statement stm=conn.createStatement();
                    ResultSet rs=stm.executeQuery("select * from manager");
                    while(rs.next())
                    {

                %>
                        <option id=mid value="<%=rs.getInt("id")%>"><%=rs.getString("id_manager")%></option>
                <%
                    }
                    conn.close();
                    rs.close();
                }
                 catch(Exception ex)
                {
                    ex.printStackTrace();
                    out.println("Error "+ex.getMessage());
                }                   
                %>

                </select>

            <br>
            </div>
            <table class="table table-bordered table-striped">
                <thead class="thead-dark">
                <tr>
                    <th class="text-center">User ID</th>
                    <th class="text-center">Name</th>
                    <th class="text-center">Shift</th>
                    <th class="text-center"colspan="3">Action</th>                              
                </tr>
                </thead>
                <%
                try
                {
                Class.forName("com.mysql.jdbc.Driver").newInstance();
                Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/newschema","root","root");
                Statement stm=conn.createStatement();
                String sql="select * from associate where id_mgr_fk="+Integer.parseInt(request.getParameter("mgrid"));
                ResultSet rs=stm.executeQuery(sql);
                while(rs.next())
                {
                %>
                    <tr>
                        <td><%=rs.getString("id_assc") %></td>
                        <td><%=rs.getString("name_assc") %></td>
                        <td class="text-center"><%=rs.getString("shift_assc") %></td>
                        <td class="text-center"><a href="update.jsp?id=<%=rs.getString("id")%>">Update</a></td>
                        <td class="text-center"><a href="delete.jsp?id=<%=rs.getString("id")%>">Delete</a></td>
                        <td class="text-center"><a href="mark_attndc.jsp?id=<%=rs.getString("id")%>">Change Leave status</a></td>
                    </tr>
                <%
                }
                rs.close(); 
                conn.close();

                }
                catch(Exception ex)
                {
                    ex.printStackTrace();
                }
                %>
            </table>
            </form>
        </div>
    </body>
</html>

在下拉菜单中单击某些菜单后,我使用上面的代码从sql显示表数据。

我已经设置了经理表列表和关联表列表,其中在我选择了经理之后,一旦在jsp页面中,它将填充该特定经理下的关联。所以在上面的代码中,我有onchange = this.form.submit();函数在同一页面上执行该过程。我的措辞是想找到一种将参数发送到不同形式以达到不同目的的方法。如何传递名称为“ mgrid”的选择按钮的值以分配给其他JSP格式的字符串?

有什么办法可以使用javascript或html方法吗? 附言我知道不建议在html中使用上述jsp代码的上述方法。但是我想知道这种方法如何进行。 任何帮助表示赞赏。

0 个答案:

没有答案