如何使用track by$index从AngularJs中的文本字段中获取值
对。。。在我的控制器中,我有这样一个数组:如何使用track by$index从AngularJs中的文本字段中获取值,angularjs,Angularjs,对。。。在我的控制器中,我有这样一个数组: $scope.EmployeeTimes = [{Day: 'Monday',StartTime: '08:00', FinishTime: '5:00'}, { Day: 'Tuesday',StartTime: '08:00', FinishTime: '5:00'}, {Day: 'Wed',StartTime: '08:00', FinishTime:
$scope.EmployeeTimes = [{Day: 'Monday',StartTime: '08:00', FinishTime: '5:00'},
{ Day: 'Tuesday',StartTime: '08:00', FinishTime: '5:00'},
{Day: 'Wed',StartTime: '08:00', FinishTime: '5:00'},
{Day: 'Thursday',StartTime: '08:00', FinishTime: '5:00'}]
然后我在我的观点中传递并循环上述上下文,如下所示:
<div ng-repeat="a in EmployeeTimes track by $index">
<input type="text" ng-model="a.Day">
<input type="text" ng-model="a.StartTime">
<input type="text" ng-model="a.Finish">
</div>
正如你所看到的,我使用trackby$index,自动创建了我需要的所有文本字段。
现在如何从文本字段中获取每个值?因此,在我上面的例子中,我需要为给定的员工获得从周一到周四的开始时间和结束时间。如何获取这些值?
基本上,我试图避免在星期一到星期四期间创建startTIme和FinishTime文本框,因此我使用了track index。如何实现这一点?以下是一个基于您的代码的示例:更改内容,按“流程数据”链接,然后查看您的控制台
由于角度绑定,您的Javascript模型会在更改文本字段中的内容时立即更新。如果要访问星期一的开始时间,请执行以下操作:
$scope.EmployeeTimes[0].StartTime
$scope.EmployeeTimes[0]。开始时间
您可以更改时间,然后单击“处理”;如果您查看控制台,您将在控制器中看到更新的数据。在控制台中,将星期二的开始时间更改为“02:00”后,我看到了以下内容:
Processing...
console_runner-d0a557e….js:1 Day: Monday StartTime: 08:00 FinishTime: 5:00
console_runner-d0a557e….js:1 Day: Tuesday StartTime: 02:00 FinishTime: 5:00
console_runner-d0a557e….js:1 Day: Wed StartTime: 08:00 FinishTime: 5:00
console_runner-d0a557e….js:1 Day: Thursday StartTime: 08:00 FinishTime: 5:00
处理。。。
console_runner-d0a557e…js:1天:周一开始时间:08:00完成时间:5:00
控制台\u runner-d0a557e…js:1天:周二开始时间:02:00完成时间:5:00
控制台\u runner-d0a557e…js:1天:周三开始时间:08:00完成时间:5:00
console_runner-d0a557e…js:1天:周四开始时间:08:00完成时间:5:00
这是“流程”链接调用的函数:
$scope.go=function(){
log('Processing…');
对于(变量i=0;i<$scope.EmployeeTimes.length;i++){
console.log('Day:'+$scope.EmployeeTimes[i].Day+'StartTime:'+$scope.EmployeeTimes[i].StartTime+'FinishTime:'+$scope.EmployeeTimes[i].FinishTime);
}
只需使用$scope.EmployeeTimes[yournindex].StartTime
对不起,你能详细说明一下吗?我不明白你说的[yournext]部分谢谢您指定您想要的EmployeeTimes
数组的索引-例如,如果您想要第一个条目,请使用0
idk。我如何感谢您,但非常感谢!这正是我所需要的..我非常感谢
$scope.go = function() {
console.log('Processing...');
for (var i = 0 ; i < $scope.EmployeeTimes.length; i++) {
console.log('Day: '+$scope.EmployeeTimes[i].Day+' StartTime: '+$scope.EmployeeTimes[i].StartTime+' FinishTime: '+$scope.EmployeeTimes[i].FinishTime);
}