每天更新日期?

时间:2018-02-02 17:52:18

标签: javascript html date

我有一个存储任务和元素的表,例如Date Completed。我在表上有一个按钮,用于标记任务已完成,并使用当前日期更新具有Date Completed列的表。如果我单击按钮将任务标记为当天完成,则将于2/2/2018进行。问题是,当我明天加载表时,它会自动将日期更新为2/3/2018。如何防止这种情况发生并保持原始日期?当我构建表时,输入items [i] .completed_date为%dateCompleted%。

HTML:

<tr class="rowTable dropdown-button" data-id="%todoID%" data-activates="todo_dropdown" data-context="true" data-type="edit-%canedit%" data-canedit="%canedit%" data-constrainwidth="false">
  <td>
    <div class="checkbox" data-complete="%notTrue%" data-show="hidden">
      <div class="todo_checkbox"></div>
    </div>
  </td>
  <td>%todoTitle%</td>
  <td>%resources%</td>
  <td class="%isOverdue%">%duedate%</td>
  <td>%percentcomplete%</td>
  <td class="completedCalendar">%dateCompleted%</td>
  <td>
    <div class="button">
      <img id="optionsButton" src="/app/images/master/actions_btn.svg" />
    </div>
  </td>
</tr>

JavaScript:

if (completed) {
  for (var i = 0; i < items.length; i++) {
    if (items[i].id == itemsID) {
      var itemsID = items[i].id;
      items[i].progress = 100;
      container.find(".checkbox").attr('data-complete', 'false');
      for (var i = 0; i < items.length; i++) {
        if (items[i].progress == 100) {
          var completed = new Date();
          items[i].completed_date = completed.toLocaleDateString();
        }
        if (items[i].progress != 100) {
          items[i].completed_date = "";
        }
      }

    }
  }
}

1 个答案:

答案 0 :(得分:0)

一旦页面刷新,所有数据都将重置,您只将其存储在本地内存中。您可以将它存储在缓存中或作为cookie存储,如果您只想测试到目前为止没有设置数据库来存储表中的内容。你可以将它存储在像这样的cookie中

document.cookie = itemID + '= { dateCompleted: ' + completed.toLocaleDateString() + ' }';