“提交表单数据”的格式日期

时间:2019-08-19 10:45:18

标签: javascript html forms

我想使用此输入类型的日期,但在提交下一种格式后得出结果:Day August 2019

默认格式为2019-08-06

<form action="#">
  <input type="date" name="code">
  <input type="submit">
</form>

如何生成这种格式:2019年8月?

谢谢。

3 个答案:

答案 0 :(得分:0)

有一些函数可以从Javascript中的日期中提取月和日。我希望以下参考可能会有所帮助:

How to change date format in JavaScript

答案 1 :(得分:0)

您可以使用JavaScript来实现。

Date是JS中的全局对象。有了自己的内置方法check it here

为了实现您想要的功能,让用户输入格式为(00 MONTH 0000)的日期,您应该使用3种不同的输入(将选择一种以按名称更改月份),然后在提交表格。

反之,如果您想将此值设为f在不同的地方打印,您可以使用像这样的格式化功能:

function formatDate(date) {
  const months = [
    "January", "February", "March",
    "April", "May", "June", "July",
    "August", "September", "October",
    "November", "December"
  ];

  const day = date.getDate();
  const monthIdx = date.getMonth();
  const year = date.getFullYear();

  return `${day} ${months[monthIdx]} ${year}`;
}

console.log(formatDate(new Date())); // in order to print it in console

答案 2 :(得分:0)

尝试使用moment js,这很简单。希望对您有帮助

function dateformat()
{
     var date = document.getElementById('date').value;
     date = moment(date).format('D MMM, YYYY');
     console.log(date)
     return false;
}
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.min.js"></script>
<form action="#" onsubmit="return dateformat()">
  <input type="date" name="code" id="date">
  <input type="submit">
</form>