-3

3列ごとにWebビューに画像を追加しようとしていますが、画像はテーブルの外側に水平に表示されます。私はどこが間違っていますか?ヒントをお願いします。

        String str = "";           
        str += "<table width='200' border='1'><tr>";
        int i = 1;

        for (i=1; i < my_image.length-1; i++) {
            if (i%3==0) {    
                str += "<td><a href='"+my_image[i]+"'"+" class='popup-open'><img src='"+my_image[i]+""+"width='80' height='65'></a></td></tr><tr>";
            } else {
                str+= "<td><a href='"+my_image[i]+"'class='popup-open'><img src=' "+my_image[i]+"' width='80' height='65'></a></td></tr>";    
            }
            str+="</tr></table>";
        }

        html_content = "<strong>"+title+"</strong>" +
                " <br><br><img src='"+single_image+"'width='300' height='211'>" +    
                "<br> " +   
                ""+content+"<br>"+str;
4

2 に答える 2

2

すでに述べたように、おそらくどこかに終了タグまたはアポストロフィがありません。

sの連結によって実際にHTMLコードを生成することStringは、実際には良い考えではありません。HTML生成については、このJackartaECSライブラリを確認することをお勧めします。サポートされなくなりましたが、すべての技術的な瞬間を処理し、HTML4.0と互換性があると主張しています。

それ以外の場合は、このJATLプロジェクトまたはjavax.swing.text.htmlのHTMLEditorKitを確認できます。

于 2012-11-22T08:48:04.010 に答える
0

ほぼ確実に、開いているすべてのHTMLタグを閉じる必要がある場所でタグを閉じているわけではありません。

あなたは間違いなくあなたのテーブルを終わらせていますが、<tr></tr>それはあまり良くありません。

間違いなく、JSPなどの使用について調査する必要があります。JSP内でJSTLを使用する方がはるかに望ましく、読みやすく、長期的には保守しやすくなります。JSTL / JSPチュートリアルを1時間読むと、将来多くの人を救うことができます。

'編集:実際には、src属性の周りを閉じていないようです:

str += "<td><a href='"+my_image[i]+"'"+" class='popup-open'><img src='"+my_image[i]+""+

する必要があります:

str += "<td><a href='"+my_image[i]+"'"+" class='popup-open'><img src='"+my_image[i]+"'"+

また、幅と高さの属性を使用するのは悪い形式です。class属性を使用してクラスを設定し、CSSを使用して画像のサイズを設定します。将来、画像のサイズを変更する場合に、頭痛やコードの変更を防ぐことができます。

于 2012-11-22T08:38:10.163 に答える