8

ループ内の配列にデータを格納するにはどうすればよいですか?

    var images;
    var i = 0;

    $('#cover div').each(function()
    {
        alert($(this).attr('id'));
        //I should store id in an array
    });


    <div id="cover">
        <div id="slider_1"><p class="content">SLIDER ONE</p></div>
        <div id="slider_2"><p class="content">SLIDER TWO</p></div>
        <div id="slider_3"><p class="content">SLIDER THREE</p></div>
    </div>
4

2 に答える 2

28

これを試して、

var arr = [];
i = 0;
$('#cover div').each(function()
{
        alert($(this).attr('id'));
        arr[i++] = $(this).attr('id');
        //I should store id in an array
});

パフォーマンスを向上させるために、jquery の代わりに javascript オブジェクトを使用して ID を取得する別の方法。

var arr = [];
i = 0;
$('#cover div').each(function()
{
      arr[i++] = this.id;
});

編集jQuery map()も使用できます

ライブデモ

arr = $('#cover div').map(function(){
    return this.id;
});
于 2012-08-02T13:18:22.300 に答える
2

javascript 配列には、次のようなメソッド push(el) があります。

var images;
var i = 0;

$('#cover div').each(function()
{
    alert($(this).attr('id'));
    images.push($(this).attr('id'));
});

<div id="cover">
    <div id="slider_1"><p class="content">SLIDER ONE</p></div>
    <div id="slider_2"><p class="content">SLIDER TWO</p></div>
    <div id="slider_3"><p class="content">SLIDER THREE</p></div>
</div>
于 2012-08-02T13:20:47.027 に答える