0

私の大学の約 2,600 クラスを保持する ArrayList に大量のデータがあります。この情報を表示する JSP ページを作成しようとしています。このデータを表に表示する方法がわかりません。

最初にテストするために、データにアクセスできることを確認するためにこれを行いました。

HTML:

 <html>
  <head>
  <body>
   <button id="btnData">Get all classes.</button>
   <div id="dataDisp></div>
  <script>
   $(document).ready(function(){
     $("#btnData).click(function(){
       $.get('daoServlet', function(responseText){ 
         $("#dataDisp").text(responseText);
       });
     });
   });
  </body>
 <html>

サーブレット:

 @WebServlet("/daoServlet/*")
 public class ClassDAO extends HttpServlet
 {
   //Code getting my ArrayList<ClassInfo> set up, etc.

   @Override
   protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException
   {
      String text = fallClassListings.toString();

      response.setContentType("text/html");
      response.setCharacterEncoding("UTF-8");
      response.getWriter().write(text);
   }
 }

これにより、すべてのクラスが表示されます。では、このデータを index.jsp ページのテーブルにフォーマットするには、どのような方向に進めればよいでしょうか? 私は何かをやってみました

 text = "<h1>This is an h1 tag</h1>";

HTML を返すことができるかどうかを確認するためだけに、h1 タグではなく、文字列リテラル全体を出力するだけです。

どんな助けでも大歓迎です!

4

2 に答える 2

0

jquery での実装で見られる唯一の問題は、「.text()」があることです。代わりに、以下に示すように「div」の「.html()」に置き換えます。

$("#dataDisp").html(responseText);

また、リストに for ループを設定し、Index.jsp ファイル内の「tr」と「td」を使用してテーブルを作成し、同じものを jquery に返すこともできます。

お役に立てれば!!

于 2013-01-07T20:58:50.077 に答える
0

テキスト メソッドの代わりに jquery html メソッドを使用すると、h1 が適切に表示されることがわかります。

$("#dataDisp").html(responseText);

このようなことを行う最善の方法は、サーバー上で json のシリアル化された文字列を生成することです。その後、javascript でオブジェクトを反復処理できます。さらに、mustache などの JavaScript テンプレート エンジンを使用してテーブルを作成することもできます。https://github.com/janl/mustache.jsを参照してください。

于 2013-01-07T21:02:22.237 に答える