您好,我想在$ modal(在ui-bootstrap-tpls-0.11.0.js中定义)中使用Angular的ngRepeat。为了实现$ modal,我使用与此处介绍的方法完全相同的方法:http : //angular-ui.github.io/bootstrap/
我有一个控制器-> PageController,用于我的页面(弹出窗口将是调用),并在弹出窗口中使用一个控制器-> ModalInstanceCtrl。在PageController中,我定义了一个对象列表,并将此列表通过$ modal.open()函数的resolve属性传递给ModalInstanceCtrl。在调试中,我可以看到在我的ModalInstanceCtrl $ scope中,我具有所需的列表。
在$ modal的html代码中,我要在该列表上进行迭代,并使用所需的信息添加适当数量的表行:)。当我在标签上使用ng-repeat时,我看不到任何表行。如果删除ng-repeat并使用myList [0] .myProperty将其更改为几行,则将评估此表达式并以可接受的方式显示$ modal。可悲的是,我不知道myList的长度,因此我需要使用ng-repeat之类的东西。
这正在工作:
<div class="modal-body lang_label_popUp">
<table>
<tr>{{translationTablePlaceHolders[0].name}} <input class="input-medium input_popUp" type="text"></input></tr>
<tr>{{translationTablePlaceHolders[1].name}} <input class="input-medium input_popUp" type="text"></input></tr>
<tr>{{translationTablePlaceHolders[2].name}} <input class="input-medium input_popUp" type="text"></input></tr>
<tr>{{translationTablePlaceHolders[3].name}} <input class="input-medium input_popUp" type="text"></input></tr>
</table>
</div>
虽然这不起作用:
<div class="modal-body lang_label_popUp">
<table>
<tr ng-repeat="placeHolder in translationTablePlaceHolders">{{placeHolder.name}} <input class="input-medium input_popUp" type="text"></input></tr>
</table>
</div>
那么在我的弹出式HTLM代码中可以完全使用ng-repeat吗?
我正在使用Angular v1.2.16和ui-bootstrap-tpls-0.11.0。
提前致谢!
这与$ modal没有关系,而是一个HTML / ngRepeat问题。
使用td
标签:
<table>
<tr ng-repeat="placeHolder in translationTablePlaceHolders">
<td>{{placeHolder.name}}
<input class="input-medium input_popUp" type="text" />
</td>
</tr>
</table>
考虑以下示例不td
与一起使用ng-repeat
:
<body>
<table>
<tr ng-repeat="number in [ 1, 2, 3]">
{{ number }}
</tr>
</table>
</body>
这将生成空标记,如您的示例所示:
<body class="ng-binding">
<table>
<tbody>
<!-- ngRepeat: number in [ 1, 2, 3] -->
<tr ng-repeat="number in [ 1, 2, 3]" class="ng-scope"></tr>
<!-- end ngRepeat: number in [ 1, 2, 3] -->
<tr ng-repeat="number in [ 1, 2, 3]" class="ng-scope"></tr>
<!-- end ngRepeat: number in [ 1, 2, 3] -->
<tr ng-repeat="number in [ 1, 2, 3]" class="ng-scope"></tr>
<!-- end ngRepeat: number in [ 1, 2, 3] -->
</tbody>
</table>
</body>
然后考虑下面的示例不使用ng-repeat
:
<body>
<table>
<tr>1</tr>
<tr>2</tr>
<tr>3</tr>
</table>
</body>
虽然实际上会显示123
,但标记看起来像这样(至少在Chrome中是这样):
<body>
123
<table>
<tbody>
<tr></tr>
<tr></tr>
<tr></tr>
</tbody>
</table>
</body>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句