将日期添加到日期输入字段Angular
Adding date to a date input field Angular
我在这个JSFiddle中简化了一些逻辑:http://jsfiddle.net/r7vyjg4h/这是有效的。
html:
<div ng-controller="MyCtrl">
<div ng-repeat="line in lines">
<div style="display: inline-block">
{{line.id}}
</div>
<div style="display: inline-block">
<input type="text" ng-model="line.date" />
</div>
</div>
<input type="button" ng-click="update()" value="update" />
</div>
js:
function MyCtrl($scope) {
$scope.lines = [{
id:"1",
date: new Date()
},{
id:"2",
date: new Date()
},{
id:"3",
date: new Date()
}
];
var newDates = [{id:"1", date: new Date('10-10-2010 10:10:10')}, {id:"3", date: new Date('11-11-2011 11:11:11')}];
$scope.update = function(){
for(var i = 0; i < newDates.length;i++){
for(var j = 0; j < $scope.lines.length; j++){
if($scope.lines[j].id == newDates[i].id){
$scope.lines[j].date = newDates[i].date;
}
}
}
}
它所做的是从网络请求中选择一些日期,并应该以ng重复的方式将其添加到正确的框中。到目前为止,它仍然是正确的。
但是,当我将输入类型从text更改为date时,什么都不会发生。我选择的值是正确的,但日期元素不会更新。
http://jsfiddle.net/vd347sfa/
我在这里错过了什么?我做错什么了吗?
HTML-5日期输入规范依赖于RFC3339第5.6节,该节指定了等于yyyy-MM-dd
的日期格式。(注意:这正是运行jsfiddle时控制台中的错误消息)。您只需要提供正确格式的日期字符串:http://jsfiddle.net/yxkvm0zm/1/
它没有反映在日期输入字段中的原因是因为格式。
日期输入字段正在查找格式mm/dd/yyyy
,而您提供的是此格式的10-10-2010 10:10:10
。
您可以使用该函数将日期转换为toISOString()
格式,它应该可以做到这一点。
你可以检查这个解决方案:
var newDates = [{id:"1", date: new Date('10-10-2010 10:00:00').toISOString().substring(0, 10)},{id:"2", date: new Date('10-10-2010 11:00:00').toISOString().substring(0, 10)}, {id:"3", date: new Date('11-11-2011 12:00:00').toISOString().substring(0, 10)}];
http://jsfiddle.net/vd347sfa/3/
您需要以正确的格式给出日期和时间。正确的方法是:
var newDates = [{id:"1", date: new Date('2010', '10', '10', '10', '10', '10')},
{id:"3", date: new Date('2011', '11', '11', '11','11','11')}];
格式为:
new Date('yyyy', 'mm', 'dd', 'hh', 'mm', 'ss');
相关文章:
- 如何使toLocalDateString中的日期字段可选
- 如何使用属性禁用日期字段
- JSP 中的“日期”字段存在问题
- 无法格式化keystone.js中的嵌套日期字段
- mongodb mongodump json日期字段解析错误
- 在日期字段上使用FTSearch
- crm 2011 javascript将日期字段设置为null
- 如何使用Javascript从HTML中的日期字段捕获日期
- ExtJS 5.1-如何将日期字段屏蔽为00/00/0000
- 用于比较日期字段的Javascript
- MVC 5-在所有浏览器中接受日期字段
- 在django中提交表单时更改日期字段值
- SQLite:从Phonegap/Cordova中的(文本)日期字段中选择日期和时间
- j查询验证单独的年、月、日的日期字段
- 从替代字段填充 jquery UI 日期选择器日期字段
- 在输入日期字段的多次迭代中加载日期选取器
- 在 podio 中将计算日期字段设置为 null(因此使用 javascript)
- SlickGrid:单元格中具有两个日期字段的复合编辑器
- MongoDB中的日期字段类型(并对其进行排序)
- MVC5 - 检查用于搜索日期字段的 2 个日期(文本框)之间的重叠