2012-10-11 22 views
7

Tôi là một newbie trong angularjs Tôi đang cố gắng để ràng buộc một tài sản ngày vào một đầu vào (văn bản) nhưng tôi không biết làm thế nào để định dạng ngày.Làm thế nào để AngularJS Date from json

đối tượng của tôi khiển json:

$scope.datasource = {"prop1":"string data", "myDateProp":"\/Date(1325376000000)\/"} 

quan điểm của tôi:

<input type="text" ng-model="datasource.myDateProp" /> 

như kết quả, tôi nhận được chuỗi "/ ngày (1325376000000) /" trên hộp của tôi.

làm cách nào để định dạng ngày này?

Trả lời

3

Điều bạn cần làm là xem http://docs.angularjs.org/api/ng.filter:date là bộ lọc có sẵn trong góc theo mặc định.

Dường như bạn đang chuyển các nội dung bổ sung với ngày tháng. Xem kịch bản ở đây. (/ Ngày (*) /). Ngoại trừ những thứ trong * mọi thứ khác không cần thiết để phân tích ngày và bộ lọc góc mặc định sẽ không thể phân tích cú pháp. Hoặc loại bỏ những thứ bổ sung này khỏi mô hình, hoặc cách khác, bạn có thể viết bộ lọc của riêng mình để loại bỏ chúng trên đầu vào.

EDIT:

Có một cái nhìn tại http://docs.angularjs.org/api/ng.directive:ngModel.NgModelController (và các ví dụ mà được định nghĩa đó!). Nếu bạn có ý định sử dụng lại nó ở nhiều nơi, tôi khuyên bạn nên làm điều đó theo phương thức mà ngModelController mô tả. Tạo một chỉ thị mới và thực hiện $ render và $ setViewValue trên ngModel.

Nếu bạn chỉ muốn thực hiện việc này ở một nơi, thì thay thế sẽ là xác định mô hình mới cho đầu vào. Một cái gì đó như

$scope.dateModel = ""; 

và sử dụng nó

<input type="text" ng-model="dateModel" ng-change="onDateChange()"/> 

Trong điều khiển của bạn, bạn sẽ phải làm một cái gì đó như:

$scope.$watch("datasource.myDateProp",function(newValue){ 

    if(newValue){ 
     convert(newValue); 
    } 
}); 

function convert(val){ 
    //convert the value and assign it to $scope.dateModel; 
} 


$scope.onDateChange = function(){ 
// convert dateModel back to the original format and store in datasource.myDateProp. 
} 
+0

ng mô hình = "datasource.myDateProp" định nghĩa một ràng buộc hai chiều , tôi không muốn mất liên kết. theo ví dụ đó o mất điều đó! –

+1

có cách nào để xác định định dạng trên mô hình ng không? –

+0

@FlavioOliveira Hãy xem câu trả lời đã thay đổi. – ganaraj

Các vấn đề liên quan