502*_*502 21 angularjs angularjs-directive angularjs-ng-repeat
我正在尝试使用ng-repeat生成表单输入.注意:'customFields'是一个字段名称数组:["Age","Weight","Ethnicity"].
<div class="control-group" ng-repeat="field in customFields">
<label class="control-label">{{field}}</label>
<div class="controls">
<input type="text" ng-model="person.customfields.{{field}}" />
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
设置'ng-model'的最佳/正确方法是什么?我想将它作为person.customfields.'fieldname'发送到服务器,其中fieldname来自"customFields中的字段".
zs2*_*020 28
<div ng-app ng-controller="Ctrl">
<div class="control-group" ng-repeat="field in customFields">
<label class="control-label">{{field}}</label>
<div class="controls">
<input type="text" ng-model="person.customfields[field]" />
</div>
</div>
<button ng-click="collectData()">Collect</button>
</div>
function Ctrl($scope) {
$scope.customFields = ["Age", "Weight", "Ethnicity"];
$scope.person = {
customfields: {
"Age": 0,
"Weight": 0,
"Ethnicity": 0
}
};
$scope.collectData = function () {
console.log($scope.person.customfields);
}
}
Run Code Online (Sandbox Code Playgroud)
你可以在这里试试.
更新:
对于验证,诀窍是放入<ng-form>转发器.请试试.
它应该是:
<input type="text" ng-model="person.customfields[field]" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
36891 次 |
| 最近记录: |