Преобразование дат JSON в DataTable - PullRequest
0 голосов
/ 19 февраля 2019

У меня есть DataTable, который заполняется датами, которые выглядят так: "/Date(1523260800000)/", и я хочу, чтобы они выглядели так: January 1, 2000.

У меня есть фрагмент, который делает работать в другой области моего кода, но когда я пытаюсь интегрировать его в DataTables, он не работает.Кое-что о возврате узлов JSON + функций, и все это идет полным ходом.

Фрагмент JS:

import $ from 'jquery';
import admissData from '../JSON/admiss.json';
import DataTable from 'datatables.net';

function loadAdmiss() {
    let admissText = admissData.d.results.map(function(val) {
        return {
            "Info": val.info,
            "Date of Admission": val.dateofadmission, function() { // ----- this code block works elsewhere
                let jsonDate = val.dateofadmission;
                let value = new Date(parseInt(jsonDate.replace(/(^.*\()|([+-].*$)/g, ''))
                );
                let dat = value.getMonth() + 1 + "/" + value.getDate() + "/" + value.getFullYear();
                return dat;
            },
            "Expires": val.expires
        }
    })

Рендеринг DataTable:

    $('#admissions-table').DataTable({
            columns: [
                { data: "Info" },
                { data: "Date of Admission" },
                { data: "Expires" }
            ],
            data: admissText,
            ...

Фрагмент JSON:

{
    "d": {
      "results": [
        {
         ...
          "dateofadmission": "/Date(1523260800000)/",
           ...
           ...

1 Ответ

0 голосов
/ 19 февраля 2019

для того, чтобы преобразовать это "/ Дата (1523260800000) /" это 1 января 2000 г.

1) var f=str.split("(")[1]; // split ( an get the second value the number

2) var s=f.split(")")[0] // разделить другое)

3) var d= new date(ParseInt(s)) // теперь вы получили дату, не забудьте проанализировать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...