2016-12-20 15 views
6

Tôi có một datepicker trên angularJS tôi dự án WCFrestNgày Giờ dạng quá phức tạp khi ràng buộc giá trị, AngularJS

enter image description here

tôi nhận được các dữ liệu sử dụng

<div class="col-md-4"> 
 
    <input id="txtOldDate" type="date" class="datepicker" ng-model="oldDate" /> 
 
</div>

nhưng dữ liệu thu được quá phức tạp khi tôi lấy dữ liệu

Fri Dec 16 2016 00:00:00 GMT+07 (SE Asia Standard Time)

tôi chỉ muốn có được giá trị như trên giao diện bảng chọn ngày

12/16/2016

đây là controller.js tôi

$scope.SearchApproval = function(employeeID, oldDate, newDate, departemen, approver) { 
 
    var promiseGet = GetApproval.GetApprovalData($scope.employeeID, $scope.oldDate, $scope.newDate, $scope.departemen, $scope.approver); 
 
    //GetApprovalData(); 
 
    promiseGet.then(function(pl) { 
 
     $scope.GetApprovalData = pl.data 
 
    }, 
 
    function(errorPl) { 
 
     console.log('Some Error in Getting Records.', errorPl); 
 
    }); 
 
}

là có cách nào để định dạng kết quả?

tôi đã thử $ lọc

$scope.oldDate = $filter('date')(new Date(dateString), 'yyyy-MM-dd');

nhưng nó cho tôi lỗi này

Error: [ngModel:datefmt] Expected 2016-12-20 to be a date

+1

tại sao không lưu nó như nó là và lọc nó để 'yyyy-MM-dd' chỉ khi bạn hiển thị nó trên trang web? – madalinivascu

+0

vì tôi muốn gửi dữ liệu đến uri và định dạng đó tạo ra lỗi yêu cầu vì nó quá dài. một cái gì đó như 'http: // localhost: 51458/ServiceRequest.svc/GetApproval? employeeID = 22134 & oldDate = Fri% 20Dec% 2009% 202016% 2000: 00: 00% 20GMT + 0700% 20 (SE% 20Asia% 20Standard% 20Time)' – Randy

+0

định dạng phù hợp phải là 'http: // localhost: 51458/ServiceRequest.svc/GetApproval? EmployeeID = & oldDate = 2016-12-20)' @madalinivascu có cách nào để chuyển đổi kết quả trước khi tôi gửi nó tới uri không? – Randy

Trả lời

0

Cảm ơn tất cả câu trả lời của bạn để trợ giúp tôi.

Cuối cùng tôi đã giải quyết được vấn đề của riêng mình. Vấn đề thực sự là trên kiểu đầu vào = "ngày". khi tôi thay đổi nó thành type = "text". nó có thể hoạt động để chỉ gửi ngày tháng.

đây là kết quả

http://localhost:51458/ServiceRequest.svc/GetApproval?employeeID=&oldDate=2000-01-01 
2

Hãy xem Angular Moment Js này và Moment Js nó có thể hữu ích.

Bạn có thể chuyển đổi này như dưới đây sử dụng

$scope.oldDate = moment(dateString).format("YYYY-MM-DD"); 

thời điểm js Để sử dụng này, bạn cần phải thêm thời điểm góc trong dự án của bạn và được giải thích trong liên kết ở trên làm thế nào để thêm bằng NuGet hoặc Chòi chơi hoặc NPM.

+0

cảm ơn bạn đã tham khảo – Randy

0

thử này

var mydate = $scope.oldDate.getFullYear()+ "-" + ($scope.oldDate.getMonth() + 1) + "-" + $scope.oldDate.getDate() 
Các vấn đề liên quan