如何从HTML5输入类型="日期"将日期传递给WebAPI;使用Angular?

时间:2016-09-08 17:47:25

标签: angularjs asp.net-web-api

我正在尝试使用HTML 5输入类型="日期"控制从Angular调用.NET Web API。

在我的HTML页面上,我看到日期正确格式" dd / mm / yyyy"在HTML控件上。然而,当我在角度控制器中检索此值时,我将以格式" Sun Sep 11 00:00:00 GMT-0400(东部夏令时"。我对如何获取此日期并传递给Web API在操作方法中具有日期参数。

<!DOCTYPE html>
<html ng-app="myApp">
<head>
    <title>This is to test dates being passed from Angular to WebAPI </title>
    <meta charset="utf-8" />
</head>
<body ng-controller="myController">
    <input type="date" ng-model="HireDate" placeholder="Hire Date" /> 
    <br />
    <input type="button" value="Get Employees" ng-click="getEmployees(HireDate)" /> 
   <!--<div ng-repeat="empSingleRecord in employee">
       empSingleRecord.FirstName + ' ' + empSingleRecord.LastName
   </div>-->

 <!--Get Angular Script Refrence--> 
    <script src="Scripts/angular.min.js"></script>
    <script src="App/AngularDateModule.js"></script>
</body>
</html>

///

var app = angular.module('myApp', []);

//Create Controller 
app.controller("myController" , function($scope){
    // $scope.HireDate 

    $scope.getEmployees = function (varHireDate) {
        alert(varHireDate);
    }

});

1 个答案:

答案 0 :(得分:0)

这是打印的完整javascrit Date对象。如果您确实想使用dd/MM/yyyy格式,可以使用角度$filter对其进行格式化:

$filter('date')(varHireDate, 'dd/MM/yyyy')

如果您只是将其发送到API,则无需执行此操作。 ASP.NET应该能够将其原样转换为DateTime