【问题标题】:Loading DataTables - what's the best option?加载数据表 - 最好的选择是什么?
【发布时间】:2013-08-14 09:43:06
【问题描述】:

我正在使用 jQuery 插件 Datatables 来显示我的 mysql 数据库中的项目/调查/...。我正在使用 Zend Framework 来创建我的 web 应用程序。
这是现在的预览:

这是我的 LibrariesController 中的 projectsAction。当您单击“SURVEYS/QUIZZES”时,您将转到同一控制器中的surveyAction,并且该表在视图中再次重组。预览我的表格在视图中的形成方式:

<table id="datatables" class="display">
            <thead>
            <tr>
                <th>Title</th>
                <th>Actions</th>
            </tr>
            </thead>
            <tbody>
            <?php   $projects = $this->projects;
            foreach($projects as $project){ ?>
                    <tr>
                        <td><a class="project_click" id="<?= $project["Id"] ?>"><?= $project["Name"] ?></a></td>
                        <td class="buttons">
                            <?php
                            if($project["PermissionLevelId"] == 1){
                            ?>
                            <span class="btn btn-block btn-inverse"><a href="../projects/edit/projectid/<?= $project["Id"] ?>">EDIT</a></span>
                            <?php } ?>
                            <span class="btn btn-block btn-inverse"><a href="../projects/use/projectid/<?= $project["Id"] ?>">USE</a></span>
                            <span class="btn btn-block btn-inverse"><a href="../projects/share/projectid/<?= $project["Id"] ?>">SHARE</a></span>
                        </td>
                    </tr>
            <?php
            }
            ?>
            </tbody>
        </table>

是通过执行新操作在项目/调查/设计之间切换的最佳方式还是应该使用 ajax 调用来加载它?

当我在项目页面上单击“SURVEYS/QUIZZES”然后当我在调查页面上单击“PROJECTS”时,我也遇到了问题:

javascript 没有加载...谁能告诉我在我的情况下最好的解决方案是什么?

【问题讨论】:

  • 你说javascript没有加载是什么意思?那你不能生成数据表?您不能用新数据填充数据表吗? ...
  • 表格中填充了新数据,但您可以看到数据表没有完全显示。没有搜索框,布局,...。 (在第二张图片中)

标签: php javascript ajax zend-framework datatables


【解决方案1】:

如果唯一需要改变的是表格的内容,而不是结构,那么使用 Ajax 会更好,而且使用 dataTables 配置非常容易。

【讨论】:

    【解决方案2】:

    我看不到你的图片,所以很难弄明白。

    我认为您可能没有初始化数据表。在更新数据后将其添加到标题或方法中:

    <script>
      $(document).ready(function() {
        $('#datatables').dataTable();
      } );
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多