引用动态创建的ng模型

时间:2016-10-24 19:13:01

标签: javascript angularjs

我有一个表单,允许用户上传一个用选择/文本框输入填充此空白表单的json。因为这些输入是动态生成的(因为它基于它们上传的json),所以我需要能够引用它们输入的答案(ng-model)。

所以说json看起来像: var jsonObj=[ {"type": "select", "label": "Name", "values": ["a", "b", "c"], "default": "a"}, {"type": "select", "label": "Age", "values": [1, 2, 3]} ]

我通过以下方式在for循环中动态插入这些输入:

var newInputCol='<' + jsonObj[i].type + ' ng-model="' + jsonObj[j].label + '" class="form-control" ></' + jsonObj[j].type + '>';
var newInputRowElement = angular.element(newInputRow);
element.append(newInputRowElement);
$compile(newInputRowElement)($scope);

另外,我没有在html中使用ng-repeat,因为我正在尝试将其布局,因此json中每3个输入有一个新行。但为了做到这一点,我需要使用ng-repeat吗?我见过的所有答案都使用ng-repeat和一个空对象来引用(例如:How to generates dynamically ng-model="my_{{$index}}" with ng-repeat in AngularJS?

用户在点击按钮后填写自己生成的表单后,我需要做什么来控制所有ng-models(可以通过在按钮上点击或点击按钮来完成) ?

1 个答案:

答案 0 :(得分:0)

我想我得到了它,一个简单的$ scope [$ scope.jsonObj [i] .label]可以引用它。还有其他方式或我应该坚持这个吗?

相关问题