数据不会以Google表格格式显示

时间:2018-01-21 08:39:37

标签: javascript html google-apps-script

我正在使用谷歌应用程序脚本从电子表格中获取已过滤和排序的数据,然后在html页面上显示相同的内容。但是,我得到格式错误的数据而不是表格中显示的数据。

我的代码

function gettssubmitted() {
  var employee = getcurruser();
  var doc = SpreadsheetApp.openById(timesheet);
  var sheet = doc.getSheetByName("Current");
  var data = sheet.getDataRange().getValues();
  var retdata = ArrayLib.filterByText(data, 1, employee);
  retdata = ArrayLib.sort(retdata, 2, Desc);
  Logger.log("timesheet");
  Logger.log(data);
  return retdata;
}

在HTML方面

<body>
      <? var logged_user = getcurruser(); ?>

      <label><?=logged_user?></label>

      <? var data = gettssubmitted(); ?>

      <table>
        <tr>
              <th>Time Sheet Date</th>
              <th>Job Ticket</th>
              <th>Start Time</th>
              <th>End Time</th>
              <th>Comments</th>
        </tr>
        <? for (var i = 0; i < data.length; i++) { ?>
          <tr>
              <td class="dispdate"><?= data[i][2].toString("d MMMM yyyy") ?></td>
              <td><?= data[i][3] ?></td>
              <td><?= data[i][4] ?></td>  
              <td><?= data[i][5] ?></td>
              <td><?= data[i][6] ?></td>
           </tr>
        <? } ?>
      </table>
  </body>

然而,当我尝试在表单中显示以下数据时

时间戳员工时间表日期作业单插槽开始插槽结束注释员工邮件主管邮件状态 2018年1月1日5:00:44 GST XXXY 12/28/17 67135 8:00 11:00投诉adkljf aslkdf提交 2018年1月1日5:00:44 GST XXXY 12/28/17 67136 11:00 17:00开玩笑问问adfjlf提交

显示为

时间表日期作业单开始时间结束时间评论 Tue Jan 02 2018 00:00:00 GMT + 0400(GST)67135 Sat Dec 30 1899 08:18:48 GMT + 0400(GST)Sat Dec 30 1899 12:18:48 GMT + 0400(GST)Description Tue Jan 02 2018 00:00:00 GMT + 0400(GST)67136 Sat Dec 30 1899 13:18:48 GMT + 0400(GST)Sat Dec 30 1899 17:18:48 GMT + 0400(GST)Description

如何让它以与图纸相同的格式显示。

干杯

1 个答案:

答案 0 :(得分:1)

以下修改怎么样?

来自:

var data = sheet.getDataRange().getValues();

致:

var data = sheet.getDataRange().getDisplayValues();

参考:

如果这对你没用,请告诉我。我想修改。