お世話になっています。JSPでHTMLを表示するプログラムを作っています。
以下のようなデータを表示しようと思っています。
項目は10個で、以下の通りです。
メーカー名 商品名 伝票日付 取引 伝票No. 数量 金額 JANコード 厚生省コード 薬価
データの件数は、最大1000件あり、お客様の都合上、それを1ページ上に表示しようとしています。
ですから、最大、10項目×1000 のデータを1ページ上に表示したいのです。
まず、表形式で見栄え良くHTMLを作成すると、最大800KBになりました(^^;
軽くするため、
<PRE>
ああああああああああ |ああああああああああああああああああああああああああああああ
|20020125 |ああ |000000 |00,000 |000,000,000 |00000000000 |000000000000 |000,000,000
</PRE>
のように記述すると200KBにおさまりました。
しかし、| の部分でズレが生じます。
ズレを生じさせない、見栄えの良い表形式のもので、軽くする方法があったら教えてください。
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
こんな感じでどうでしょう?
<BODY><TABLE cellpadding="2" background="images/td_bg.gif" width="100%">
<TR bgcolor="#ffd9d9">
<TD colspan="3">大日本製薬</TD>
<TD colspan="5">アイスコーヒー</TD>
</TR>
<TR bgcolor="#ffd9d9">
<TD width="11%">20020131</TD>
<TD width="6%">売上</TD>
<TD width="13%">8888888</TD>
<TD width="10%">99,999</TD>
<TD width="11%">999,999,999</TD>
<TD width="17%">a-00000001126</TD>
<TD width="17%">888888888888</TD>
<TD width="11%">343,434,343</TD>
</TR>
<TR>
<TD colspan="8"> </TD>
</TR>
<TR bgcolor="#ceffff">
<TD colspan="3">小日本製薬</TD>
<TD colspan="5">ホットカフェオレ</TD>
</TR>
<TR bgcolor="#ceffff">
<TD>20020233</TD>
<TD>売上</TD>
<TD>7777777</TD>
<TD>33,333</TD>
<TD>333,333,333</TD>
<TD>b-00000001212</TD>
<TD>777777777777</TD>
<TD>121,212,121</TD>
</TR>
<TR>
<TD colspan="8"> </TD>
</TR>
</TABLE></BODY>
この調子で実際に1000件分作ってみたところ(最後までテーブルは閉じない),333,031 バイトでした。ただし,中に入る字数で多少増減はすると思います。
たぶん,「background="images/td_bg.gif"」はこのとおりにすると必要なくなるかもしれません。
1000件分のデータを表示するのですから,データとデータの間に隙間を設けたくない場合は,
<TR>
<TD colspan="8"> </TD>
</TR>
を削除してください。
確認はIE6でしています。
試してみてください。
お返事が遅くなってしまい、申し訳ありません。
早速、<TD width="17%">のように、一番上の行のTDの幅だけ指定し、
あとの行は指定せずに試してみました。
また、各データに入れていた「background="images/td_bg.gif"」も
削除しましたが、結局1000件で600KBにしかなりませんでした。
始めは800KBだったことを考えると、かなり小さくなりましたが、
これ以上、少しは軽くなっても大きく変えることは出来ないと思い、
お客様に相談し、結局検索結果を複数ページに分けることにしました。
HEADやCSSで約50KBあることと、各データの中身に大小あること他、
原因かと思います。
しかし、ご相談にのっていただき、大変勉強になりました。
ありがとうございました。
No.2
- 回答日時:
sp.gifなど1×1ピクセルの透過GIFを用意して、
先頭で横幅を固定してあげると、それ以降の<td width="xx">などの指定が不要になるので結構サイズ削れると思います。
あとはソース見にくくなりますが、改行もなくすとか
細かいところで削っていくと気休めにはなるかもしれません
<TABLE ・・・・ STYLE="table-layout:fixed">というのはIE限定ですが、テーブルを全部読み終わってからではなく、読みながら表示するための指定です
(詳しくは参考URLをご覧いただけばわかっていただけるかと思います)
<TABLE bgcolor="#ffd9d9" cellpadding="2" background="../images/td_bg.gif" width="100%" STYLE="table-layout:fixed">
<TR>
<TD><img src="sp.gif" width="70" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="40" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="80" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="60" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="70" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="100" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="100" height="1" alt="" border="0"></TD>
<TD><img src="sp.gif" width="70" height="1" alt="" border="0"></TD>
</TR>
<TR>
<TD colspan="3">大日本製薬</TD>
<TD colspan="5">アイスコーヒー</TD>
</TR>
<TR>
<TD>20020131</TD>
<TD>売上</TD>
<TD>8888888</TD>
<TD>99,999</TD>
<TD>999,999,999</TD>
<TD>a-00000001126</TD>
<TD>888888888888</TD>
<TD>343,434,343</TD>
</TR>
</TABLE>
参考URL:http://www.microsoft.com/JAPAN/developer/worksho …
No.1
- 回答日時:
ベタ書きなら200KBのところ、800KBは
どう考えても大きすぎるような気がするのですが・・・
単純計算で1セルあたり600バイトをタグなどで使ってる話になります。
そこで確認したいのですが、表のセルごとに
<td bgcolor="#ffffff">
のようなことはしてないですよね。
もし何か属性を使っているなら、colgroupか
CSSのselectorを使って節約できます。
この回答への補足
お返事ありがとうございます。
<td bgcolor="#ffffff">のように背景は指定していません。
ただ、項目の幅を揃えるため、WIDTHは指定してあります。
念のため、下に、1つのTABLEのタグを記述します。
よろしくお願いいたします。
<TABLE bgcolor="#ffd9d9" cellpadding="2" background="../images/td_bg.gif" width="100%">
<TR>
<TD colspan="3">大日本製薬</TD>
<TD colspan="5">アイスコーヒー</TD>
</TR>
<TR>
<TD width="70">20020131</TD>
<TD width="40">売上</TD>
<TD width="80">8888888</TD>
<TD width="60">99,999</TD>
<TD width="70">999,999,999</TD>
<TD width="100">a-00000001126</TD>
<TD width="100">888888888888</TD>
<TD width="70">343,434,343</TD>
</TR>
</TABLE>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) EXCEL関数LOOKUPとFILTERについての質問です 1 2022/12/21 05:53
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- Excel(エクセル) Excel教えてください。 下記のことが出来るのは、マクロですか?条件付き書式でしょうか、、?知恵を 5 2022/11/12 09:33
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
- その他(プログラミング・Web制作) スプレッドシート 一括でQRコードを生成したい 2 2022/12/15 11:36
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
- Excel(エクセル) エクセルについて教えてください。 2 2023/06/14 11:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
リンクを知らせる手のマークが...
-
ボタンをセル内一杯に表示させ...
-
ホームページビルダーV9の「リ...
-
画像とテーブルの隙間をなくす。
-
html+CSSのみで作るスライドショー
-
cssで、チェックボックスの画像...
-
HTMLのIMAGEに。。
-
水面の波紋
-
ホームページの一番下に配置し...
-
1箇所に複数画像を別々に配置は...
-
画像の横に文字をうまく配置で...
-
ポップアップウィンドウのサイ...
-
htmlの文字が縦書きになる
-
【ヒトの神秘】美男美女から何...
-
超音波で洗脳。
-
input type="hidden"で取得した...
-
W3Cのソースコードの検証サービ...
-
複数行にまたがる括弧を表示し...
-
htmlのolやulなどlistにtitleや...
-
CSS:animation開始位置の設定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ボタンをセル内一杯に表示させ...
-
リンクを知らせる手のマークが...
-
UDP通信を使うチャットプログラ...
-
ポップアップウィンドウのサイ...
-
プルダウンの選択リストの中に...
-
htmlで画像を2個ずつ並べていき...
-
ホームページビルダーの画像サ...
-
XML画像データををHTMLで簡単に...
-
画像のサイズが変わらない
-
画像の場合のみ、下線を消す方...
-
リンクを選択したときの青い枠...
-
レスポンシブ対応のHTML・CSS(...
-
footerの背景が切れて、背景画...
-
html+CSSのみで作るスライドショー
-
ホームページタグ打ち。サイズ...
-
画像の横に文字をうまく配置で...
-
水面の波紋
-
ホームページで画像を横に並べ...
-
【HTML/CSS】ボタンの枠が伸び...
-
HTMLのIMAGEに。。
おすすめ情報