0

私はサーブレットからいくつかのデータを取得しましたが、出力したいのはHTMLから「showArticles」と呼ばれるdivであり、各値に同じhtmlチャンクがあります。ただし、出力される値は 1 つだけです。ので、私は持っています:

|Article Title.   |
|Article content. |

そのようなhtmlがたくさんあることを望みます。前もって感謝します。

AJAX:

$.ajax({
        url : "LoadArticlesByTag",
        dataType : 'json',
        type: 'GET',
        data: {
            b_sub_tag:option_value
        },
        error : function(jqXHR, textStatus, errorThrown) {
            alert(textStatus);
        },
        success : function(data){
           var data1=data[0], data2=data[1];
           for(var i=0;i<data1.length;i++){
            outputToDiv(data1,i);
           }
        }

    });


function outputToDiv(data1,i) {                
            $('#showArticles').html(                
            "<article class='one_quarter'>"+
                "<figure><img src='images/demo/32x32.gif' width='32' height='32' alt=''></figure>"+
                "<strong>"+data1[i]["name"]+"</strong>"+
                "<p>"+data1[i]["content"]+"</p>"+
                "<p class='more'><a href='#'>Read More &raquo;</a></p>"

                );
        }
4

2 に答える 2

1

を使用しているため、#showArticles呼び出すたびにコンテンツをオーバーライドしています。現在の内容を保持する場合は、最初の使用または最後の使用に追加する必要があります..outputToDiv.html().prepend().append()

$('#showArticles').append(
     "<article class='one_quarter'>"+
     "<figure><img src='images/demo/32x32.gif' width='32' height='32' alt=''></figure>"+
     "<strong>"+data1[i]["name"]+"</strong>"+
     "<p>"+data1[i]["content"]+"</p>"+
     "<p class='more'><a href='#'>Read More &raquo;</a></p>");
于 2013-04-06T10:09:13.193 に答える
1

シンプルで、ターゲットセレクターの内容を.html() 置き換えます。を使ってみてください.append()

$('#showArticles').append(...)

期待どおりに機能しない場合は、常にドキュメントを確認して、関数がどのように機能するかを理解することを忘れないでください。

于 2013-04-06T10:07:37.817 に答える