【发布时间】:2014-07-18 06:18:33
【问题描述】:
我的 html 中有以下代码,我想在其中切换输入和跨度字段。在表格行中。
<table>
<tbody ng-repeat="(i, cont) in char.items">
<tr>
<td>
<div>
<a ng-click="choose()">
<input type="text" ng-model="item.desc" ng-show="sho==1" />
<span ng-show="sho==0">{{item.type}}</span></a>
</div>
</td>
</tr>
</tbody>
</table>
<div ng-click="addRows(char)" style="WIDTH: 974px">Add Row</div>
在我的控制器中我有
app.controller("testCtrl", function($scope) {
$scope.sho=0;
$scope.addRows = function(char) {
if (typeof char.items == 'undefined') {
char.items = [];
}
char.items.push({ des: '', type: '', price: '', charge__id: ''});
};
$scope.choose= function() {
//some values are retrieved than I want to toggle so it shows the
//want to set sho=1 so input is hidden instead the span vaue is shown
$scope.sho=1;
};
});
问题是当我设置 $scope.sho=1;它在表格的所有行中显示跨度值。 当我添加一个新行时,我只想显示输入框,而其他行已经插入了 span 值。 请让我知道如何为表格中的每一行设置 ng-show。 谢谢
【问题讨论】:
-
您能否向我们展示更多您的 HTML,从
开始标记开始?
这些行是在ng-repeat中创建的吗?如果由于已经创建了子范围而很容易通过 ng-repeat 是的
标签: javascript jquery angularjs