2016-01-29 103 views
0

我使用AngularJS,HTML5在aspx頁面創建訪客登記入住信息: -自動填充文本框與當前日期

<div style="border: dotted 1px grey; padding: 20px 0 20px 0; width: 40%;"> 
       <div class="row" style="margin-left: 30px"> 
        <div style="display: inline-block;"> 
         Visitor: 
        </div> 
        <div style="display: inline-block; margin-left: 28px; width: 383px;"> 
         <input type="text" data-ng-model="currentUser.Visitor"> 
        </div> 
       </div> 
       <div style="margin-top: 20px"></div> 
       <div class="row" style="margin-left: 30px"> 
        <div style="display: inline-block;"> 
         Title: 
        </div> 
        <div style="display: inline-block; margin-left: 40px;"> 
         <input type="text" data-ng-model="currentUser.Title"> 
        </div> 
       </div> 
       <div style="margin-top: 20px"></div> 
       <div class="row" style="margin-left: 30px"> 
        <div style="display: inline-block;"> 
         Visitee: 
        </div> 
        <div style="display: inline-block; margin-left: 24px;"> 
         <input type="text" data-ng-model="currentUser.Visitee"> 
        </div> 
       </div> 
       <div style="margin-top: 20px"></div> 
       <div class="row" style="margin-left: 30px"> 
        <div style="display: inline-block;"> 
         Arrival: 
        </div> 
        <div style="display: inline-block; margin-left: 25px;"> 
         <input type="text" data-ng-model="currentUser.Arrival"> 
        </div> 
       </div> 
       <div style="margin-top: 20px"></div> 
       <div class="row" style="margin-left: 30px"> 
        <div style="display: inline-block;"> 
         Departure: 
        </div> 
        <div style="display: inline-block; margin-left: 0px;"> 
         <input type="text" data-ng-model="currentUser.Departure"> 
        </div> 
       </div> 
      </div> 

      <div> 
       <div style="margin: 2% 0 0 8%; display: inline-block"> 
        <button data-ng-click="addNew(currentUser)" class="btn btn-primary" type="button">Add New Check-in</button> 
       </div> 

JSFiddle

我想場的到來是自動填充在我Main.JS ...所以,我想說: -

var now = new Date(); 
$scope.currentUser.Arrival = now.format("dd/MM/yyyy, hh:mm tt"); 

now.format()......是不是本地的js ......但功能的工作原理,因爲它是,只是不填充到文本框中。

但是,這是不工作...它禁用我的角度網格和先前輸入的所有數據.. Main.JS開始出像: -

var app = angular.module('myApp', ['ngTouch', 'ui.grid']); 
app.controller('UserController', ['$scope', function ($scope) { 
var now = new Date(); 
$scope.currentUser.Arrival = now.format("dd/MM/yyyy, hh:mm tt"); 
$scope.gridOptions = { 
    data: 'userList', 
    columnDefs: [{ field: 'Visitor', displayName: 'Visitor' }, 
     { field: 'Title', displayName: 'Type of Visit' }, 
     { field: 'Visitee', displayName: 'Visitee' }, 
     {field: 'Arrival', displayName: 'Arrival Time'}, 
     {field: 'Departure', displayName: 'Departure Time'}] 
    };... etc etc... fucntionalities.... 
+0

你能重現錯誤在http://jsfiddle.net或http://codepen.io? – rcdmk

回答

1

當我運行在的jsfiddle,我得到的錯誤那now.format不是一個函數。

因爲你不能使用Angular $過濾器嗎?它傳遞到你的控制器:

app.controller('UserController', ['$scope', '$filter', function ($scope,$filter) { 

然後指定日期:

$scope.currentUser.Arrival = $filter('date')(new Date(),'dd/MM/yyyy, hh:mm a'); 

也從另一個方面說明的是,從你給我們的,currentUser尚未爲$範圍界定,所以抵達酒店將不會被分配。如果你另外定義了$ scope.currentUser,那麼你很好。否則,你可能希望看起來像這樣:

$scope.currentUser = {}; 
$scope.currentUser.Arrival = $filter('date')(new Date(),'dd/MM/yyyy, hh:mm a'); 
+0

[Fiddle](https://jsfiddle.net/beartums/qvdc7L3w/1/) – Beartums

+0

感謝Beartums。這是我第一次使用AngularJS,因此不太熟悉它。學習曲線。 – Philo

+1

2philo,不用擔心。我們都去過那裏。我保證,它變得更容易:) – Beartums