Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/130.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 我如何在输入日期加载带有角度的值?_Angularjs_Datepicker_Materialize_Html5 Input Date - Fatal编程技术网

Angularjs 我如何在输入日期加载带有角度的值?

Angularjs 我如何在输入日期加载带有角度的值?,angularjs,datepicker,materialize,html5-input-date,Angularjs,Datepicker,Materialize,Html5 Input Date,我使用Angular 1.5.5编程,使用Materialize CSS 0.97.6。 我有这个问题 在控制器上,我有$scope.myDate='2017-01-13T02:06:40' 在HTML文件中,我有 但是输入字段没有显示任何内容 如果我把放进去,它就会工作 我这样做是为了检查myDate变量,它也可以工作 因此,任何人都可以解释为什么在我使用变量时没有将值加载到输入?对于任何其他输入,您可以使用ng模型将输入字段中的值与您的模型绑定 作为: 模型必须始终是日期对象,否则将抛出错误

我使用Angular 1.5.5编程,使用Materialize CSS 0.97.6。 我有这个问题

在控制器上,我有
$scope.myDate='2017-01-13T02:06:40'
在HTML文件中,我有

但是输入字段没有显示任何内容

如果我把
放进去,它就会工作

我这样做是为了检查myDate变量
,它也可以工作


因此,任何人都可以解释为什么在我使用变量时没有将值加载到输入?

对于任何其他输入,您可以使用ng模型将输入字段中的值与您的模型绑定

作为:

模型必须始终是日期对象,否则将抛出错误。无效的日期对象(getTime()为NaN的日期)将呈现为空字符串


您可以使用属性ng model将日期从范围传递到输入[date]。 您可以在此处查看完整的文档:

在代码中,需要将
myDate
更改为日期对象,而不是字符串

$scope.myDate = new Date(2013, 9, 22);
在您的模板中,输入[日期]如下所示:

<input type='date' ng-model="myDate " />
$scope.myDate = new Date('2017-01-13T02:06:40');
<input type="date" class="form-control datepicker" ng-model="myDate">
$scope.myDate = '2017-01-13T02:06:40';
<input type="text" class="form-control datepicker" ng-readonly="true" style="background: #ffffff;" value="{{myDate | date: 'dd/MM/yyyy'}}">

无法更改html5输入日期类型的格式,有关更多信息,请参阅前面的答案:

因此,如果格式是强制性的,您可以使用angular library中的Datepicker弹出元素,例如,您可以直接设置格式,这是它们的:

否则,如果该格式对您不是强制性的,只需实例化一个新的日期对象,它的工作方式如下:

<input type='date' ng-model="myDate " />
$scope.myDate = new Date('2017-01-13T02:06:40');
<input type="date" class="form-control datepicker" ng-model="myDate">
$scope.myDate = '2017-01-13T02:06:40';
<input type="text" class="form-control datepicker" ng-readonly="true" style="background: #ffffff;" value="{{myDate | date: 'dd/MM/yyyy'}}">
$scope.myDate=新日期('2017-01-13T02:06:40');
或者,如果您不关心编辑日期,而只想显示日期,则只需将输入类型更改为文本,其工作方式如下:

<input type='date' ng-model="myDate " />
$scope.myDate = new Date('2017-01-13T02:06:40');
<input type="date" class="form-control datepicker" ng-model="myDate">
$scope.myDate = '2017-01-13T02:06:40';
<input type="text" class="form-control datepicker" ng-readonly="true" style="background: #ffffff;" value="{{myDate | date: 'dd/MM/yyyy'}}">
$scope.myDate='2017-01-13T02:06:40';

谢谢。但是我需要特定格式的值('dd/MM/yyyy')。使用JavaScript代码将字符串转换为日期,反之亦然。我从服务器获取myDate值,它就是这种格式。