【发布时间】:2016-09-19 22:11:59
【问题描述】:
我正在尝试使用动态表单并在 AngularJS 中使用了以下内容:
<dynamic-form
template="formTemplate"
ng-model="formData"
ng-submit="processForm()">
</dynamic-form>
控制器:
$scope.formData = {}; // JavaScript 需要一个对象来放入我们表单的模型。
$scope.formTemplate = [];
函数成功(响应){ console.log('用户注册表格:'+响应); // 这是表单的id,会转换成字符串 // var form-id = response.form-id; var 结果 = toArray(响应); $scope.formTemplate = 结果;
}
function toArray(obj) {
var result = [];
var model = [];var type = [];var label = [];
for (var prop in obj) {
var value = obj[prop];
angular.forEach(obj.fields, function(val,key){
if(val.field_type != ''){type.push(val.field_type);}
else{type.push(0);}
model.push(key);
});
}
for(var j=0;j<model.length;j++){
if(type[j] === 'textfield' || type[j] === 'password'){
type[j] = 'text';
}
else if(type[j] === 'email'){
type[j] = 'email';
}
else{
type[j] = type[j];
}
console.log("result.. " + model[j] + "......"+ type[j]);
result.push(
{
"type": type[j],
"label": model[j],
"model": model[j]
}
);
}
console.log("Result..." + result);
return result;
}
我正在使用这个动态表单:https://github.com/danhunsaker/angular-dynamic-forms
但是,如果我使用其中给出的示例,它可以工作,但上述情况不起作用。这里出了什么问题?模型评估?
我的回答:
var response = {
"form-id":"user_register_form",
"fields":{
"name":{
"field_type":"textfield",
"description":""
},
"mail":{
"field_type":"textfield",
"description":""
},
"field_first_name":{
"field_type":"textfield",
"description":""
},
"field_gender":{
"field_type":"radio",
"options":{
"male":"Male",
"female":"Female"
},
"description":""
}
}
}
【问题讨论】:
-
你能告诉我这个console.log上显示什么 --> console.log("Result..." + result);它在 toArray 函数上。
-
它是一个对象数组。结果...[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象],[对象对象]
-
例如,如果我打印第一个对象 - 结果..[对象对象] 类型...文本标签...名称模型...名称(键,值)
标签: javascript angularjs angular-ngmodel dynamic-forms