Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ค่าอินพุตวันที่ของ AngularJS และ HTML5 - วิธีให้ Firefox แสดงค่าวันที่ที่อ่านได้ในอินพุตวันที่


องค์ประกอบประเภทวันที่อนุญาตให้ผู้ใช้ป้อนวันที่โดยใช้กล่องข้อความหรือใช้ตัวเลือกวันที่ ด้วยคำสั่ง ng-model ให้แบ่งค่าของข้อมูลแอปพลิเคชัน AngularJS ไปยังตัวควบคุมอินพุต HTML Firefox ไม่สนับสนุน type="date" ในขณะนี้ มันจะแปลงค่าทั้งหมดเป็นสตริง ตั้งแต่

คุณต้องการให้ date เป็นวัตถุ Date จริง ไม่ใช่สตริง ดังนั้นเราจึงสร้างตัวแปรอื่น จากนั้นเชื่อมโยงตัวแปรทั้งสองดังที่ทำในโค้ดที่ระบุด้านล่าง

<input type = "date" ng-model = "realdate" />
function MainCtrl($scope, dateFilter) {
   $scope.date = new Date();
   $scope.$watch('date', function (date){
      $scope.dateString = dateFilter(date, 'yyyy-MM-dd');
   });
   $scope.$watch('realdate', function (realdate){
      $scope.date = new Date(realdate);
   });
}