0

jsp ページに問題があります (私は初心者です)。jsp ページで、データベースから読み取られるテーブルを作成しました。ここにページのコードを書きます:

<%@page import="java.sql.SQLException"%>
<%@page import="java.lang.String"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.util.Date "%>
<%@page import="jord.ConnectionManager "%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<% 
    String sql= "select numelencotrasm,dtelencotrasm \n"+
                "from fimand \n"+
                "where eser=2012 \n"+
                "group by numelencotrasm,dtelencotrasm \n"+
                "order by numelencotrasm";
    ConnectionManager manager = new ConnectionManager();
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    try{
        conn = manager.getConnection();
        stmt = conn.createStatement();
        rs = stmt.executeQuery(sql);
    }catch(SQLException ex){
        rs.close();
        conn.close();
        rs=null;
        conn=null;
        response.sendRedirect("../index.jsp");
    }
%>
<form id="tabella1" name="tabella1">
    <input name="numelencotrasm" type="hidden" value=""/>
    <input name="dtelencotrasm" type="hidden" value=""/>
    <table width="275px" cellspacing="0" cellpadding="1" border="1">
        <tr>
            <td class="TabellaTitolo" width="50%">
                Numero Distinta
            </td>
            <td class="TabellaTitolo" width="50%">
                Data Distinta
            </td>
            <td class="TabellaTitolo" width="50%">
                #
            </td>
        </tr>
        <%
        try{
            while(rs.next()){
        %>
        <tr>
            <td>
                <input type="text" value="<% out.print(rs.getInt(1)); %>"/>
            </td>
            <td>
                <input type="text" value="<% out.print(rs.getDate(2)); %>"/>
            </td>
            <td>
                <a href="#" onclick="javascript:setValue('<% out.print(rs.getInt(1)); %>','<% out.print(rs.getDate(2));%>');">
                    Click-me
                </a>
            </td>
        </tr>
        <%
            }
        }catch(Exception e){
            response.sendRedirect("../index.jsp");
        }
        %>
    </table>
</form>
<script language="Javascript">


    function setValue(num, dt){
        document.tabella1.numelencotrasm.value=num;
        document.tabella1.dtelencotrasm.value=dt;
        alert(document.tabella1.numelencotrasm.value); //test
        alert(document.tabella1.dtelencotrasm.value);//test
    }
</script>

さて..新しいhtmlテーブルを作成したいのですが、行「#」をクリックすると、選択した行の値を渡すデータベースからデータが読み取られます。

基本的な英語でごめんなさい!:/

4

1 に答える 1

0

上記の jsp コードに次の変更を加える必要があります。

  1. アクション URL をフォームに追加します。
  2. setValue() を呼び出した後、フォームを送信するための呼び出しを行います。

アクション jsp で:

  1. 上記のページで送信されたパラメータをキャプチャし、
  2. それらをさらに処理して、データベースから詳細なデータを取得し、
  3. html テーブルを作成し、それを埋めて表示します。

これは、学習を始めたばかりだと考えて、与えられた簡単な解決策です。

更新 1 :

table1 をクリックすると、日付 table2 を含む iframe を表示したいと考えています。

このためには、現在の JSP に次の変更を加える必要があります。

  1. アクション URL を別の JSP として定義します。のようなものになりますaction="targetPage.jsp"
  2. フォームのターゲット属性値を として定義しますiframe。のようになりtarget="nameOfTheIframe"ます。
  3. を適切に定義iframeしてページに配置します。に類似している必要があり<iframe name="targetIframe" src="about:blank"></iframe>ます。
  4. JavaScriptsetValue関数で、フォームを送信するための指示を記述します。
  5. 他の JSP では、このフォームから送信されたパラメータを受け取り、処理して結果を表示します。
于 2012-05-26T16:11:05.850 に答える