jQuery数组和Foreach

时间:2012-05-31 12:34:58

标签: jquery html css

这是我的阵列,我需要做一个foreach来显示每个图像等。 基本上这个数组包含幻灯片和幻灯片信息,我需要输入一个包含信息的div(如果我知道如何访问它,我可以这样做)。

var slides = new Array();
slides[1] = {slidetitle: 'title 1',
             slidetext: 'text 1',
             image1: '',
             magnifyposit: '',
             buttontext: 'button text 1',
             buttonurl: 'http://www.google.com'};
slides[2] = {slidetitle: 'title 2',
             slidetext: 'text 2',
             image1: '',
             magnifyposit: '',
             buttontext: 'button text 2',
             buttonurl: 'http://www.google.com'};
slides[3] = {slidetitle: 'title 3',
             slidetext: 'text 3',
             image1: '',
             magnifyposit: '',
             buttontext: 'button text 3',
             buttonurl: ''};
slides[4] = {slidetitle: 'title 4',
             slidetext: 'text 4',
             image1: '',
             magnifyposit: '',
             buttontext: 'button text 4',
             buttonurl: 'http://www.google.com'};
slides[5] = {slidetitle: 'title 5',
             slidetext: 'text 5',
             image1: '',
             magnifyposit: '',
             buttontext: 'button text 5',
             buttonurl: 'http://www.google.com'};

3 个答案:

答案 0 :(得分:6)

您可以像这样使用$.each

$.each(slides,function(i,obj){
   //here  obj is object element of slides array

  // access properties of the object 
  // in current iteration like obj.slidetitle,obj.slidetext etc

});

注意:您应该从0开始数组索引。

Working Fiddle

答案 1 :(得分:1)

有几点需要注意。你想要在索引0处开始你的数组。这是完整的代码和jsfiddle:http://jsfiddle.net/lucuma/gKgns/

var slides = new Array();

slides[0] = {slidetitle: 'title 1',
                         slidetext: 'text 1',
                         image1: '',
                         magnifyposit: '',
                         buttontext: 'button text 1',
                         buttonurl: 'http://www.google.com'};

slides[1] = {slidetitle: 'title 1',
                         slidetext: 'text 1',
                         image1: '',
                         magnifyposit: '',
                         buttontext: 'button text 1',
                         buttonurl: 'http://www.google.com'};

slides[2] = {slidetitle: 'title 2',
                         slidetext: 'text 2',
                         image1: '',
                         magnifyposit: '',
                         buttontext: 'button text 2',
                         buttonurl: 'http://www.google.com'};

slides[3] = {slidetitle: 'title 3',
                         slidetext: 'text 3',
                         image1: '',
                         magnifyposit: '',
                         buttontext: 'button text 3',
                         buttonurl: ''};

slides[4] = {slidetitle: 'title 4',
                         slidetext: 'text 4',
                         image1: '',
                         magnifyposit: '',
                         buttontext: 'button text 4',
                         buttonurl: 'http://www.google.com'};

 slides[5] = {slidetitle: 'title 5',
                         slidetext: 'text 5',
                         image1: '',
                         magnifyposit: '',
                         buttontext: 'button text 5',
                         buttonurl: 'http://www.google.com'};      

var $container= $('#container');
$.each(slides, function(index, value) { 
   var $div = $('<div>' + value.slidetitle + '</div>');
   $container.append($div);
});

答案 2 :(得分:1)

基本上,您必须创建一个空tbody的表格,tbody必须设置一个ID才能在以后选择它。

$.each(slides, function (index, value) {
    var row = '<tr><td>value.title</td></tr>'
    + '<tr><td>value.text</td></tr>';

    $('#tableBody').append(row);
}
  • 其中value是您的Array对象。