【发布时间】:2014-09-04 04:06:40
【问题描述】:
我正在使用 angularjs 来制作分页类型的东西,比如说我有一个 2D 数组,我正在显示其中的值。它工作正常,但我也希望能够编辑这些值,所以我在输入标签中使用了 ng-hide,它工作正常,但问题是,如果输入的类型是数字或日期,我的数组值的类型是字符串那么这些值不会显示在可编辑的输入框中。
代码:
<table class="table table-hover">
<thead>
<tr class="active">
<th class="id">Label</th>
<th class="name">Field</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in fieldsonPage[currentPage]" class="active">
<td>{{item}}</td>
<td>
<div ng-repeat="prop in pagedItems[currentPage]" class="active">
<div ng-hide="ngEditName" ng-click="ngEditName=!ngEditName">
{{prop[item]}}
</div>
<div ng-show="ngEditName">
<input type="{{fieldsType[item]}}" ng-hide="{{fieldsType[item] == 'textarea' ? 'true' : 'false'}}" ng-model="prop[item]" class="form-control"/>
<textarea rows="4" cols="50" ng-hide="{{fieldsType[item] == 'textarea' ? 'false' : 'true'}}" class="form-control" ng-model="prop[item]" /><div ng-click="ngEditName=!ngEditName">Close</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
类型取决于正在工作的相关数据类型,但绑定不正确,因此我需要一种方法来将字符串转换为 html 页面表达式中的数字或日期。任何线索!
【问题讨论】:
-
为什么不将模型数据类型从字符串更改为数字和日期?可能正在使用包装器属性。
-
@rnrneverdies 我有一个非常不同的数据结构,它包含数字、字符串和日期的组合,我无法更改它,因为我的整个功能现在都在开发中......
标签: angularjs angularjs-ng-repeat