【问题标题】:multiple child rows in datatable数据表中的多个子行
【发布时间】:2014-09-09 17:52:14
【问题描述】:

我有一个现有的 PHP/javascript 应用程序,该应用程序生成一个包含一些行和相应子行的表(可能有很多,都从数据库中一次检索),默认情况下是隐藏的。用户单击放置在表格行中的按钮后,将显示子行。 它看起来像这样(一个父母,两个孩子): http://i.imgur.com/hul9fT9.png

它是这样从php生成的:

    for($i = 0; $i < count($shipArr); $i++)
    {           
        echo '
            <tr>
                <td><span>'.$shipArr[$i]["orderNo"].'</span></td>
            </tr>
            <tr>
                <td>
                    <table id="details">
        ;'
        for($j = 0; $j < count($shipDetailsArr[$i]); $j++)
        {
            echo '
                        <tr>
                            <td>
                                    <p>
                                        <span>Order Number: </span><span>'.$shipDetailsArr[$i][$j]["lineNo"].'</span>
                                    </p>
                            </td>
                        </tr>
            ';
        }
        echo '</table>;'
    }

我可以使用从 db 填充的对象 $shipArr 和 $shipDetailsArr 以使用数据表插件创建相同的效果吗?我怎样才能做到这一点?

感谢您的帮助。

【问题讨论】:

    标签: javascript php jquery datatables


    【解决方案1】:

    我认为没有可以自动生成表格的数据库插件。您应该使用类似表格生成器的东西。您可以自己编程,例如PHP。

    如果这对您来说很难,那么已经有课程可以做到这一点。两个例子是:

    祝你好运!

    【讨论】:

      【解决方案2】:

      我知道这个问题已经很老了,但考虑到此处与我的项目相关的另一个答案,我想我会提供一些支持。

      为了解决这个问题,我写了 htmlgen,镜像到 packagist。如果我自己这么说的话,它使使用 PHP 生成 HTML 非常好!

      use function htmlgen\html as h;
      use function htmlgen\map;
      
      $beeData = [
        'pop' => 'yup',
        'candy' => 'sometimes',
        'flowers' => 'so much',
        'water' => 'not really',
        'sand' => 'indifferent',
        'donuts' => 'most definitely'
      ];
      
      echo h('table',
        h('thead',
          h('tr',
            h('td', 'item'),
            h('td', 'do bees like it?')
          )
        ),
        h('tbody',
          map($beeData, function($value, $key) { return
            h('tr',
              h('td', $key),
              h('td', $value)
            );
          })
        )
      );
      

      输出(实际输出中不包含空格)

      <table>
        <thead>
          <tr>
            <td>item</td>
            <td>do bees like it?</td>
          </tr>
        </thead>
        <tbody>
         <tr>
           <td>pop</td>
           <td>yup</td>
         </tr>
         <tr>
           <td>candy</td>
           <td>sometimes</td>
         </tr>
         <tr>
           <td>flowers</td>
           <td>so much</td>
         </tr>
         <tr>
           <td>water</td>
           <td>not really</td>
         </tr>
         <tr>
           <td>sand</td>
           <td>indifferent</td>
         </tr>
         <tr>
           <td>donuts</td>
           <td>most definitely</td>
         </tr>
       </tbody>
      </table>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-03-26
        • 2021-04-01
        • 1970-01-01
        • 2022-01-01
        • 2021-05-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多