Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将datepicker返回的日期格式转换为其他格式?_Javascript_Angularjs_Datepicker_Date Format_Angular Material - Fatal编程技术网

Javascript 如何将datepicker返回的日期格式转换为其他格式?

Javascript 如何将datepicker返回的日期格式转换为其他格式?,javascript,angularjs,datepicker,date-format,angular-material,Javascript,Angularjs,Datepicker,Date Format,Angular Material,很抱歉标题不好,我不知道该如何更好地表达。我会尽可能地解释我需要什么 我目前正在用Javascript制作一个任务管理器(ToDo列表),您可以在其中创建任务,为它们设置一个时间表,然后您将拥有一个列表,其中包含您需要执行的所有任务以及每个任务的相应时间表(开始日期和结束日期) 我正在使用Angular.js和Angular Material来做我的UI。我有Angle Material的日期选择器。这是我用来获取日期值的代码: angular.module('KBTM_App', ['ngMa

很抱歉标题不好,我不知道该如何更好地表达。我会尽可能地解释我需要什么

我目前正在用Javascript制作一个任务管理器(ToDo列表),您可以在其中创建任务,为它们设置一个时间表,然后您将拥有一个列表,其中包含您需要执行的所有任务以及每个任务的相应时间表(开始日期和结束日期)

我正在使用Angular.jsAngular Material来做我的UI。我有Angle Material的日期选择器。这是我用来获取日期值的代码:

angular.module('KBTM_App', ['ngMaterial']).controller('AppCtrl', function($scope) {
$scope.myDate1 = new Date();

...

// This is where I get the date value
var initial_date_1 = angular.element(document.querySelector('[ng-controller="AppCtrl"]')).scope().myDate1;
问题是这个日期选择器以这种格式返回日期:“2016-04-29T08:36:10.027Z”,这是我不想要的。我想要一个更普通的格式,比如“DD-MM-YYYY”

我试着用矩.js转换日期格式,但没有成功。以下是我使用的代码:

var initial_date = moment(initial_date_1, "YYYY-MM-DD'T'HH:MM:SS.SSS'Z'").format("DD-MM-YYYY");
然后我会将该日期存储在localStorage中:

// Get the other dates already in the list
var initial_dates = get_initial_dates();

// Adds the new date to that list
initial_dates.push(initial_date);

// Stores those dates in the localStorage
localStorage.setItem('initial_date_db', JSON.stringify(initial_dates));
使用该代码,在尝试将新任务添加到任务列表时,我会得到“无效日期”

抱歉发了这么长的帖子


感谢所有能帮助我的人。

您可以使用angular material datepicker通过以下代码将日期格式转换为html格式

 data-ng-value="myDate1  | date : 'shortDate'"

您可以使用以下代码使用angular material datepicker转换html中的日期格式

 data-ng-value="myDate1  | date : 'shortDate'"

使用角度日期过滤器设置日期的格式。参考链接


将$filter插入控制器主模块。

使用角度日期过滤器格式化日期。参考链接


在控制器主模块中插入$filter。

处理日期的最佳方法是使用
momentjs
,并且有一个特殊的AJS指令可用。
您可以查看
[momentjs][2]
官方文档了解详细信息。您必须添加
角度力矩
作为依赖项注入,以便轻松使用力矩

处理日期的最佳方法是使用
momentjs
,并且有一个特殊的AJS指令可用。
您可以查看
[momentjs][2]
官方文档了解详细信息。您必须添加
角度力矩
作为依赖项注入,以便轻松使用力矩

您是否已经尝试过日期格式=“选项?”?恐怕没有。我是一名Javascript初学者,所以我在网上搜索发现,大多数人都建议使用moment.js来处理类似的问题。@T.Ferreira你尝试过我的答案吗?你已经尝试过date format=”“选项了吗?恐怕没有。我是一个Javascript初学者,所以我在网上搜索,发现大多数人都推荐使用矩.js来处理类似的事情。@T.Ferreira你试过我的答案吗?