2016-09-18 20 views
1

サーバーの応答から、私は日付をmyのスコープ変数にマップしたいのですが、どのタイプが '日付'の角度であるかは同じですが、マップできません次のエラーに入力タイプの日付ng-modelは日付データを許可していません

angular.js:12798 Error: [ngModel:datefmt] Expected `2016-09-22T18:30:00.000Z` to be a date 
http://errors.angularjs.org/1.4.12/ngModel/datefmt?p0=2016-09-22T18%3A30%3A00.0 

注取得していますよう:ng-repeatループ内ですでに例外配列として$ operatingDetails.dateを通じて午前マッピングを

いただければ幸いしてくださいすべてのヘルプ...

Htmlの

<div ng-repeat="operatingDetails in operatingDetails.exceptions" style="margin-top: 8px;"> 
      <div class="DateField"> 
      <input id="date2" type="date" ng-model="operatingDetails.date" style="" ng-change="customOPHchangeExpDateValid(operatingDetails.date, $parent.$parent.$index)"/> 
      </div> 
</div> 

のJs(角度)あなたは$スコープにし、NGリピートでそれを使用しているとして、サーバーの応答

{ 
       "name" : "Custom Operation Hours1", 
       "exceptions" : [{ 
         "date" : "2016-09-15T18:30:00.000Z", 
         "starttime" : "10:02AM", 
         "endtime" : "10:02PM", 
         "_id" : "57de44c54feb409c2e13ff40", 
         "$$hashKey" : "object:207" 
        } 
       ], 
       "businesshour" : { 
        "sat" : { 
         "starttime" : "8:00AM", 
         "endtime" : "5:00PM" 
        }, 
        "fri" : { 
+0

可能なフィドル?またはplunkar? – Aravind

+0

とても申し訳ありません、それは巨大なコードなので、私はフィドルを行うことができました、ごめんなさい – User123

+0

あなたはどんなng-repeatを使用していますか?もしそうなら、 – Aravind

答えて

1

私はあなたが "日付" として、このエラーを取得している推測に次の関数を追加します(: "2016-09-15T18:30:00.000Z" "日付"、)文字列から日付に変換します。

そう願っ

 
$scope.opertingHours.date = new Date(exceptions[0].date); //Converting string to date 

、これを試してみてください、それはuのために働くWLL。

+0

これはどのように機能すると思いますか?もう一度私の質問にお答えください。 – User123

+0

このplunkerを見てみてください、あなたに役立つかもしれません.https://plnkr.co/edit/NGvrSOjjyaKgKOafyqfI?p = preview –

+0

ありがとうございます、しかし、申し訳ありませんが、私の実際のコードで動作していません。 – User123

0

あなたoperatingDetailsが混乱している

$scope.opertingHours.date 

次のように別のものを試してみてください

<div ng-repeat="oD in operatingDetails.exceptions" style="margin-top: 8px;"> 
       <div class="DateField"> 
       <input id="date2" type="date" ng-model="convertDate(oD.date)" style="" ng-change="customOPHchangeExpDateValid(oD.date, $parent.$parent.$index)"/> 
       </div> 
</div> 

はまた、あなたのコントローラ

$scope.convertDate=function(inputDate){ 
return new Date(inputDate); 
} 
+0

をチェックすると、エラーが無限ループになります。 – User123

+0

どこが無限ループになりますか? – Aravind

関連する問題