猫鼬日期值导出以编辑表单

时间:2018-10-26 11:09:01

标签: node.js mongodb forms mongoose ejs

我具有如下数据模型:

var SiteSchema = new mongoose.Schema({
   DateFrom: Date,
   DateTo: Date,
});

如何将这些值导入到我的编辑表单中? 我尝试了以下方法:

Start Date: <input class="form-control" type="date" name="formValue[DateFrom]" value="<%= varReturnValue.DateFrom %>">
End Date: <input class="form-control" type="date" name="formValue[DateTo]" value="<%= varReturnValue.DateTo %>">

此处的结果屏幕截图: form result

在mongo上,我得到以下值:

DateFrom: 2017-12-01T00:00:00.000Z,
DateTo: 2018-10-26T00:00:00.000Z,

1 个答案:

答案 0 :(得分:0)

HTML日期类型输入不支持ISO日期格式作为值。输入的内容应为“ YYYY-MM-DD”格式。

在您接收数据的代码中,请使用以下代码段:

varReturnValue.DateFrom = convertToYYYYMMDD(varReturnValue.DateFrom);
varReturnValue.DateTo = convertToYYYYMMDD(varReturnValue.DateTo);

function convertToYYYYMMDD(d) {
    date = new Date(d);
    year = date.getFullYear();
    month = date.getMonth()+1;
    dt = date.getDate();

    if (dt < 10) {
        dt = '0' + dt;
    }
    if (month < 10) {
        month = '0' + month;
    }
    return (year+'-' + month + '-'+dt);
}