【问题标题】:Set dynamic data to dynamically created table in JQuery在 JQuery 中将动态数据设置为动态创建的表
【发布时间】:2019-07-24 17:50:47
【问题描述】:

我正在从数据库中获取对象数组。数据可能不会一直相同,可能会有所不同。

我的数据格式,

var items = [
    { Name: "Apple" },
    { Name: "Orange"},
    { Name: "Banana"},
    { Name: "Cherry"},
    { Name: "ABC"}

];

我想将这些数据排列在块或图块或表中,以便列块的数量应为 3。也就是说,我期望结果为,

 Apple      Orange    Banana
 Cherry     ABC

我尝试了一些代码,

    var html = "";
    html += '<tr>'
    html += '<td>';
    html +='<div class="row">';
    html +='<div class="col-md-12">';
    html +='<div class="col-md-4">';
    var k=1;
     $.each(items,function(key,val){
            if(k==2){
            html +='</div>';
            html +='<div class="col-md-4">';
        }
        if(k==3){
            html +='</div>';
            html +='<div class="col-md-4">';
        }

        html +=val.Name;
        k++;    


     });
     html +='</div></div></div>';
     html += '</td>';
     html += '</tr>';
    $('#maindiv').html(html);

我知道这是错误的,主要原因是我对此并不陌生。谁能帮帮我?

【问题讨论】:

  • 试试这个:删除 rowcol-md-12 包装器,然后将每个包装器放在 col-md-4 中 - 放在一起,不要尝试自己破坏它们,-md-4 会为你做这个
  • @freedomn-m 然后它将在一个列中
  • 鉴于您使用的是col-md-4,我可能不正确地假设您也在使用引导程序。你在使用引导程序吗?
  • jsfiddle.net/q0vfm92b (确保它对于-md- 足够宽,否则,是的,你得到一个单列) - 完全符合你的要求(引导 3)
  • @DimitarPashovski 的回答基本相同。如果您使用col-md-4,那么您需要一个“中等”屏幕,所以如果它是单列,可能是您的屏幕不够宽 - 尝试使用浏览器缩小到 10% 以查看输出中发生的情况跨度>

标签: jquery html loops


【解决方案1】:

使用append() 方法获得更简单的解决方案

var row = $('<div class="row"></div>');

jQuery.each(items, function(index, value) {

    var column = $('<div class="col-md-4">'+value.Name+'</div>');
    row.append(column);

});

$('#maindiv').append(row);

【讨论】:

  • 我试过这个,即使没有错误显示我没有得到任何视图。它是空的,那里什么都没有显示。
  • 检查拼写错误 - class="row&gt; class="col-md-4&gt;
  • 是的问题 :) 抱歉...编辑了我的答案
猜你喜欢
  • 1970-01-01
  • 2011-03-14
  • 1970-01-01
  • 2010-11-16
  • 1970-01-01
  • 1970-01-01
  • 2011-12-03
  • 2012-08-21
  • 1970-01-01
相关资源
最近更新 更多