【问题标题】:AngularJS Model DateTime property binding with formatAngularJS 模型 DateTime 属性与格式绑定
【发布时间】:2015-07-29 06:55:14
【问题描述】:

我有一个具有许多日期时间属性的模型,在这个模型中,我有 LastUpdatedTime 属性,我将其用于并发功能,并且不会绑定到视图中的任何控件。并且此日期时间属性在客户端呈现为 /Date(1224043200000)/,在保存在 mvc 控制器中时,它没有将 /Date(1224043200000)/ 识别为有效格式并采用默认日期并且保存操作失败。所以在获取模型之后和在视图中渲染之前的任何常见解决方案,以便我可以更改模型中所有日期时间属性的格式。

【问题讨论】:

  • 已经在这里回答了:stackoverflow.com/a/726869/1565402
  • 感谢 Ibrahim,我想要 angularjs 方法,我们可以在获取模型之后和渲染模型之前转换模型中的所有日期时间属性以查看。我没有将一个 Datetime 属性绑定到视图中的任何控件,也没有绑定我想在发送到保存之前更改该属性的格式的属性。
  • 在下面查看我的答案。! 不绑定属性就是你的意思!让我知道以获得更多帮助

标签: asp.net-mvc angularjs datetime


【解决方案1】:

假设您在控制器中的日期值为 var /Date(1224043200000)/

使用下面的代码

HTML

<body ng-controller="MainCtrl">
    <p>Hello ASP DATE ISSUE </p>
    {{dateValue.slice(6,19) | date}}
</body>

JS

var app = angular.module('aspDateApp', []);
app.controller('MainCtrl', funscope) {
  $scope.name = 'ASP DATE ISSUE';
  $scope.dateValue='/Date(1224043200000)/';
});

LIVE DEMO

【讨论】:

    【解决方案2】:

    您应该从“/Date(1224043200000)/”(1224043200000) 中提取毫秒部分并将其转换为有效的日期格式并将其绑定到模型的相关属性中。

    var datetimeInMilliseconds = parseInt("/Date(1224043200000)/".match(/\(([^)]+)\)/)[1]);
    var convertedDateTime = new Date(datetimeInMilliseconds);
    ArrayName.AttributeName = convertedDateTime ;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-16
      • 1970-01-01
      • 2013-12-25
      • 1970-01-01
      • 2013-03-17
      • 1970-01-01
      • 2014-12-04
      • 1970-01-01
      相关资源
      最近更新 更多