如何从代码编写器视图将数组传递给jquery脚本


How to pass an array to a jquery script from a codeigniter view

我使用jquery数据表插件和编码器。在我的一个观点中,我有:

 <table id="myDataTable" class="display" cellspacing="0" width="100%">
    <thead>
        <tr>
            <?php foreach($keys as $key): ?>
            <th><?php echo $key; ?></th>
            <?php endforeach; ?>

        </tr>
      </thead>      
            <tbody>
        </tbody>
    </table>

<script type="text/javascript">
$(document).ready(function () {
    var oTable = $('#big_table').dataTable({
        "bProcessing": true,
        "bServerSide": true,
        "sAjaxSource": 'datatable_controller/datatable',
        "sPaginationType": "full_numbers",
          "columns": [
                    { "data": "id" },
                    { "data": "message_id" },
                    { "data": "subject" },
                    { "data": "date" }
                  ],

参考列结构,现在我在列字段名称(id、message-id、subject、date)中进行硬编码。我已经在数组$keys中有了这些,我在上面使用它来动态生成表HTML。是否有一种方法将$keys直接传递到"columns"选项中?

看起来你可以在你的javascript中的"columns"选项内使用PHP循环,如果我遵循正确的格式。类似这样的东西(显然未经测试)?

      "columns": [
               <?php foreach($keys as $key): ?>
                 {"data": "<?php echo $key ?>"},
               <?php endforeach; ?>
              ],