Angularjs 角度ng重复创建多个表单语法错误
我正在重复一组项目,每个项目都有自己的表单和提交按钮,它将表单信息发送到提交功能。我需要知道哪个项目正在提交,所以我想我应该为每个项目创建一个表单,这将指示哪个项目正在提交。目前,它是在一个类似这样的重复:Angularjs 角度ng重复创建多个表单语法错误,angularjs,forms,angularjs-ng-repeat,Angularjs,Forms,Angularjs Ng Repeat,我正在重复一组项目,每个项目都有自己的表单和提交按钮,它将表单信息发送到提交功能。我需要知道哪个项目正在提交,所以我想我应该为每个项目创建一个表单,这将指示哪个项目正在提交。目前,它是在一个类似这样的重复: <input ng-model="query" type="text" placeholder="Filter by" autofocus> <ul class="gNow"> <li ng-repeat="item in selRole.selectR
<input ng-model="query" type="text" placeholder="Filter by" autofocus>
<ul class="gNow">
<li ng-repeat="item in selRole.selectRoles | multifilter:query">
<form name="selRoleForm-{{item.rowId}}" ng-submit="selRole.selectRole(selRoleForm-{{item.rowId}})" novalidate>
<div class="card">
<p>Card Name: {{item.cardName}}</p>
<p>.. other form elements here ..</p>
<p><button type="submit">Select</button></p>
</div>
</form>
</li>
</ul>
新的(工作):
使用表格:
<div class="form-group" ng-repeat="item in selRole.selectRoles | multifilter:query">
<ng-form name="userFieldForm">
<label></label>
<input >
</ng-form>
</div>
只需将表单名称存储在您的ng重复数组中:
<input ng-model="query" type="text" placeholder="Filter by" autofocus>
<ul class="gNow">
<li ng-repeat="item in selRole.selectRoles | multifilter:query">
<form name="{{item.formName}}" ng-submit="selRole.selectRole(item.formName)" novalidate>
...
-
...
您只需在名称串联中反转转换即可。
在ng submit上解析参数时,需要转换的是硬编码字符串,而不是rowId
大概是这样的:
<input ng-model="query" type="text" placeholder="Filter by" autofocus>
<ul class="gNow">
<li ng-repeat="item in selRole.selectRoles | multifilter:query">
<form name="selRoleForm-{{item.rowId}}" ng-submit="selRole.selectRole('selRoleForm-'+item.rowId)" novalidate>
<div class="card">
<p>Card Name: {{item.cardName}}</p>
<p>.. other form elements here ..</p>
<p><button type="submit">Select</button></p>
</div>
</form>
</li>
-
卡片名称:{{item.cardName}
。。此处的其他表单元素
挑选
这修复了语法错误,为我指明了正确的方向。这让我看到了真正的问题,即在ng submit函数中没有传递正确的对象。添加了问题和解决方案的更新。
<input ng-model="query" type="text" placeholder="Filter by" autofocus>
<ul class="gNow">
<li ng-repeat="item in selRole.selectRoles | multifilter:query">
<form name="{{item.formName}}" ng-submit="selRole.selectRole(item.formName)" novalidate>
...
<input ng-model="query" type="text" placeholder="Filter by" autofocus>
<ul class="gNow">
<li ng-repeat="item in selRole.selectRoles | multifilter:query">
<form name="selRoleForm-{{item.rowId}}" ng-submit="selRole.selectRole('selRoleForm-'+item.rowId)" novalidate>
<div class="card">
<p>Card Name: {{item.cardName}}</p>
<p>.. other form elements here ..</p>
<p><button type="submit">Select</button></p>
</div>
</form>
</li>