【问题标题】:append javascript array data into table td将 javascript 数组数据附加到表 td 中
【发布时间】:2020-05-18 05:34:38
【问题描述】:

每个 id 重复两次..我不想重复每个 id

let t_p_data = [
    {
        id: 11001
    },
    {
        id: 11002
    },
];
let paymentsData = $('.payments-data');
paymentsList = paymentsData.innerHTML;
for (i=0; i<t_p_data.length; i++) {
    for (let p_data of t_p_data) {
        paymentsList += ` <tr><td>${p_data.id}</td></tr>  ` }
}paymentsData.append(paymentsList);    
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table><tbody class="payments-data"></tbody></table>

【问题讨论】:

    标签: javascript html jquery reactjs


    【解决方案1】:
    for (i=0; i<t_p_data.length; i++) {
    
        for (let p_data of **t_p_data[i]**) {
    
            paymentsList += ` <tr><td>${p_data.id}</td></tr>  ` }
    }paymentsData.append(paymentsList);  
    

    在 for..of 循环中,您指的是数组,因此它为每个元素打印两倍的 id 值。如果您只需要打印 .id 属性,请删除其中一个循环。

    【讨论】:

      【解决方案2】:

      为什么需要 2 个循环?只需删除其中一个

      let t_p_data = [
          {
              id: 11001
          },
          {
              id: 11002
          },
      ];
      let paymentsData = $('.payments-data');
      paymentsList = '';
      
      for (let p_data of t_p_data) {
        paymentsList += ` <tr><td>${p_data.id}</td></tr>  ` 
      }
      paymentsData.append(paymentsList);
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
      <table><tbody class="payments-data"></tbody></table>

      【讨论】:

      • paymentsList =paymentsData.innerHTML 没有意义...一个 jQuery 对象没有 innerHTML
      • 你说得对。我从问题中复制了它,并没有意识到它没有意义。由于数据已经被追加,无论上面的代码如何,操作想要实现的目标都会发生。
      猜你喜欢
      • 1970-01-01
      • 2020-02-25
      • 1970-01-01
      • 1970-01-01
      • 2016-08-23
      • 2018-03-19
      • 1970-01-01
      • 1970-01-01
      • 2018-07-03
      相关资源
      最近更新 更多