相关疑难解决方法(0)

Model不是AngularJS中输入的日期对象

使用AngularJS我试图使用输入显示日期type=date:

<input ng-model="campaign.date_start" type="date">
Run Code Online (Sandbox Code Playgroud)

但是,这会产生以下错误:

Error: error:datefmt
Model is not a date object
Run Code Online (Sandbox Code Playgroud)

该日期实际上来自JSON API,格式如下:

date_start": "2014-11-19"
Run Code Online (Sandbox Code Playgroud)

我认为我可以通过使用过滤器解决它,但这不起作用,我得到相同的错误:

 <input ng-model="campaign.date_start | date" type="date">
Run Code Online (Sandbox Code Playgroud)

我也尝试将字符串转换为日期,但我又得到了同样的错误:

 $scope.campaign.date_start = Date(campaign.date_start);
Run Code Online (Sandbox Code Playgroud)

我还能尝试什么?

javascript date angularjs

31
推荐指数
3
解决办法
2万
查看次数

为什么AngularJS中的日期输入字段抛出类型错误?

当我向用户显示填充的可编辑表单时(而不是当用户输入数据并提交时),会发生错误.数据来自MySQL over REST/JSON,服务如下所示:

HTML:

<input class="form-control" type="date" name="dateInput" id="dateOfBirth" 
                   ng-model="user.dateOfBirth">
Run Code Online (Sandbox Code Playgroud)

CCONTROLLER:

.controller('EditCtrl', function ($scope, $routeParams, UserDetail, $window) {
        $scope.user = UserDetail.find({}, {'id': $routeParams.id});
}
Run Code Online (Sandbox Code Playgroud)

服务:

service.factory('UserDetail', function ($resource) {

    return $resource(
        'http://localhost:8080/ClearsoftDemoBackend/webresources/clearsoft.demo.users/:id',
        {id: '@id'},
    {
    find: {method: 'GET'},

    });
});
Run Code Online (Sandbox Code Playgroud)

错误:

错误:[ngModel:datefmt]预计2010-05-13T00:00:00-04:00是日期

javascript html5 angularjs

9
推荐指数
2
解决办法
3万
查看次数

具有角度范围的 HTML5 输入日期格式

我有一个 HTML 5 input type="date"

<input type="date" required ng-model="nm.pick" id="dpicker ">
Run Code Online (Sandbox Code Playgroud)

然后在我的角度控制器中,我正在分配值

nm.pick = $filter("date")(Date.now(), 'dd/MM/yyyy');
Run Code Online (Sandbox Code Playgroud)

现在这将使 HTML5 默认日期格式为yyyy-MM-dd.

但我想要日期格式 - dd/MM/yyyy

  1. 我无法在我的 HTML 中更改<input type="date"><input type="text"。如果我更改,日期格式将正常工作
  2. 然后我将输入日期更改为在控制器中输入文本

    $("#dpicker").attr("type", "text");
    nm.pick = $filter("date")(Date.now(), 'dd/MM/yyyy');
    
    Run Code Online (Sandbox Code Playgroud)

    这是行不通的。

基本上我想dd/MM/yyyy在不改变 HTML 的情况下将日期格式更改为控制器中。

实现这一目标的所有可能方法是什么?

html javascript datetime date angularjs

4
推荐指数
1
解决办法
1869
查看次数

错误:ngModel:datefmt Model不是日期对象

我正在使用角度日期选择器.但它给出了以下错误.你能告诉我如何理清它.提前致谢.

HTML

    <input type="date" uib-datepicker-popup ng-model="vm.property.deedDate" 
    is-open="status.opened" datepicker-options="vm.dateOptions" 
date-disabled="disabled(date, mode)" ng-required="true" close-text="Close" />
Run Code Online (Sandbox Code Playgroud)

JS

 vm.property = {};

 vm.init = function () {
                propertyService.getPropertyForEdit({
                    id: propertyId
                }).success(function (result) {
                    vm.property = result.property;
                    vm.property.deedDate = moment(vm.property.deedDate);
                 });
            };

            vm.init();
Run Code Online (Sandbox Code Playgroud)

从Web Api返回:

在此输入图像描述

Web Api Dto对象:

 public class PropertyEditDto : IOutputDto
    {
        public int Id { get; set; }
        public DateTime DeedDate { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

它给出了下面提到的控制台错误

在此输入图像描述

c# datepicker angularjs asp.net-web-api2

1
推荐指数
1
解决办法
985
查看次数