我有一份登记表,要求用户提供他们的开始日期。我使用的是一个平均框架,这意味着我在前端使用AngularJs。
到目前为止我所做的:
首先,我尝试使用以下代码,但它在IE & FireFox上不起作用。
<input type="date" name="startDate">然后,我尝试了下面的REGEX,我在this上找到了这样的问题。
^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$效果很好。下面是我的应用程序中它是如何工作的图片。

问题:
当用户提交表单时,数据将保存在MongoDB中。在上面的图像中,您可以看到数据被保存为字符串。我想把它转换成一种正确的日期格式,这样我就可以在it服务器端(Node.js)上执行操作,即过滤所有在2015年后开始使用的用户,或者在1999-2001年之间离开的用户等等。
任何建议都会有帮助。
更新:
目前我正在测试moment.js。一旦我有结果就会更新我的问题。
结果:
我使用moment.js尝试了以下操作:
console.log("MOMENT" + moment("1993-03-25").format());其产出如下:
MOMENT 1993-03-25T00:00:00+00:00我不确定这是否是要保存在MongoDB中的正确格式,它是否允许我在它上执行服务器端操作。
发布于 2016-03-01 10:40:01
在将moment对象保存为日期字段之前,需要将其转换为JavaScript日期:
moment("1993-03-25").toDate()https://stackoverflow.com/questions/35719431
复制相似问题