1

汚いタイトルで申し訳ありませんが、とにかく。サーバー上にある PHP ファイルからデータを取得する jQuery スクリプトがあります。スクリプトはfetch/debatt.jsと呼ばれ、すべてのデータ<div class="classy">http://pi.codele.se/debatt.htmlに 1 つに出力しますが、出力される DIV ごとに最大 5 つの異なるクラスにする必要があります (1 つの出力エントリ)。

1st DIV tag = class="first"
2nd DIV tag =  class="secondDiv"
3rd DIV tag = class="niels"
4th DIV tag = class="hotdog"
5th DIV tag = class="last"

フェッチ/fetch.js

$(document).ready(function(){
    var output = $('#output');
    $.ajax({
        url: 'http://pi.codele.se/php/debatt.php',
        dataType: 'jsonp',
        jsonp: 'jsoncallback',
        timeout: 5000,
        success: function(data, status){
            $.each(data, function(i,item){ 
                var content = '<div class="classy"><div class="img-cont img-4" style="background-image: url('+item.bild+');"></div><h3>'+item.rubrik+'<span>Publicerad '+ item.datum+'</span></h3>'
                + '<p>'+item.innehall+'<br></div></div>';       
                output.append(content);
            });
        },
        error: function(){
            output.text('Kolla din anslutning.')
        }
    });
});
4

2 に答える 2

1

配列を使用できます:

var arr = ['first', 'secondDiv', 'niels', 'hotdog', 'last'];

$.each(data, function(i, item){ 
     var content = '<div class="' + arr[i] + '">...';
     // ...
});
于 2013-01-16T18:46:00.063 に答える
1

これを試すことができます。クラスは配列内にあり、それぞれがias キーを取り、配列から対応するクラスを出力します。

$(document).ready(function(){
    var classes = ['class','class2','class3','class4','class5'];
    var output = $('#output');
    $.ajax({
        url: 'http://pi.codele.se/php/debatt.php',
        dataType: 'jsonp',
        jsonp: 'jsoncallback',
        timeout: 5000,
        success: function(data, status){
            $.each(data, function(i,item){ 
                var content = '<div class="'+classes[i]+'"><div class="img-cont img-4" style="background-image: url('+item.bild+');"></div><h3>'+item.rubrik+'<span>Publicerad '+ item.datum+'</span></h3>'
                + '<p>'+item.innehall+'<br></div></div>';       
                output.append(content);
            });
        },
        error: function(){
            output.text('Kolla din anslutning.')
        }
    });
});
于 2013-01-16T18:46:21.107 に答える