我在“clients.html”中有一个包含客户端数据的表,当我在其中一个客户端上输入“创建文档”时,我想将此客户端的数据发送到新页面“Doc.html” ,这是我的代码:
clients.html
<div class="btn-group" style="
right: 5px;
" ng-repeat="post in posts">
<div class="btn btn-icon">
<a ui-sref="app.deviscl({customerID:post.id})" data-toggle="tooltip" title="create Doc"><img src="img\facturejj.png"
class="m-b-xs w-xs"> </a>
</div></div>
这是路由:
.state('app.deviscl', {
url: '/devis/ajout/:customerID',
templateUrl: 'tpl/deviscl.html',
controller: 'editController'
})
但是在clients.html中按钮创建Doc多次出现,如果我尝试从按钮的div中删除ng-repeat,我无法获得任何结果 非常感谢你的帮助
答案 0 :(得分:1)
基本上使用此代码,您可以为帖子中的每个帖子创建一个按钮。我猜你想要1个按钮,但不知何故,1个按钮知道帖子中的哪个帖子被选中了?
在这种情况下,您可以创建一个带有选择下拉列表的表单,然后他们从选择中选择“帖子中的帖子”,然后提交表单,将表单链接到带有正确数据的创建文档页面?
<强>更新强> 请求示例:
<form>
<table>
<tr>
<td>
<select ng-model="postId" ng-options="post.id as post for post in posts"></select>
</td>
</tr>
<tr>
<td><input type="submit" ng-click="createDoc(postId) value="save" /></td>
</tr>
</table>
</form>
当然,你可以改变这个简单的形式,以适用于你自己的应用程序。例如添加css或更改一些名称等。
然后在你的控制器中:
$scope.createDoc = function(postId) {
app.deviscl({customerID:postId});
}
并且您的路由保持不变。