我有一些JSON数据 - 包含输入类型(输入,下拉,广播,复选框等)的字段数组,标签以及是否需要它们。
我正在通过数组进行ng-repeat来构建表单。我试图了解基于输入类型值构建不同类型输入的最佳方法是什么。
在正常编程中,我会做一个
foreach (var field in FormData){
if (field.inputType == "dropdown"){
//logic to build dropdown using jQuery, etc..
}
}
在AngularJS中,如果在一个ng-repeat =“FormData”字段中,那么我真的无法做到。在循环遍历数组时动态构建这些不同类型元素的正确方法是什么?
这个问题非常相似: How can I use Angular to output dynamic form fields?
非常感谢任何建议。
答案 0 :(得分:2)
在我的应用程序中,我确实在ng-repeat中使用ng-switch(参见非常相似的问题的答案)来实现类似的功能。唯一的问题是链接到模型。如果要绑定到存储在变量中的属性名称(如果json包含该字段的id),您将无法执行以下操作:
<input type="text" ng-model="formdata.{{elem.id}}" />
我发现你可以这样做:
<input type="text" ng-model="formdata[elem.id]" />