Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS ng重复,多个列表显示不同的值_Javascript_Angularjs_Json_Forms - Fatal编程技术网

Javascript AngularJS ng重复,多个列表显示不同的值

Javascript AngularJS ng重复,多个列表显示不同的值,javascript,angularjs,json,forms,Javascript,Angularjs,Json,Forms,我正在尝试使用AngularJS为我们的网站创建一些表单。页面将有两个复选框“表格1”和“表格2”。默认情况下,将选中表格1。 如果选中表格1和表格2,则应显示表格1和表格2的字段。但是,只应显示不同的字段 下面是我的json数据 [ { "form_id": 1, "form_name": "Form 1", "form_field_list": [ { "form_field_id

我正在尝试使用AngularJS为我们的网站创建一些表单。页面将有两个复选框“表格1”和“表格2”。默认情况下,将选中表格1。 如果选中表格1和表格2,则应显示表格1和表格2的字段。但是,只应显示不同的字段

下面是我的json数据

[
    {
        "form_id": 1,
        "form_name": "Form 1",
        "form_field_list": [
            {
                "form_field_id": 1,
                "form_field_label": "First Name",
                "form_field_value": ""
            },
            {
                "form_field_id": 2,
                "form_field_label": "Last Name",
                "form_field_value": ""
            },
            {
                "form_field_id": 3,
                "form_field_label": "Email",
                "form_field_value": ""
            }
        ]
    }
    {
        "form_id": 2,
        "form_name": "Form 2",
        "form_field_list": [
            {
                "form_field_id": 1,
                "form_field_label": "First Name",
                "form_field_value": ""
            },
            {
                "form_field_id": 2,
                "form_field_label": "Last Name",
                "form_field_value": ""
            },
            {
                "form_field_id": 4,
                "form_field_label": "Comments",
                "form_field_value": ""
            }
        ]
    }
]
例如,如果选中“表格1”复选框,则应显示以下输入字段: 名字 姓 电子邮件

如果选中“表格2”复选框,则应显示以下输入字段: 名字 评论

如果选中这两个复选框,则应显示以下输入字段: 名字 姓 电子邮件 评论


我不知道从哪里开始。我是否先建立一个单独的JSON列表,其中包含唯一的表单_field _list对象?

我想这会让你更接近你想要的东西


基本上,我建议保留一个选项卡,显示已选择的字段,并根据子字段的表单\字段\ id连接唯一字段,不断重新评估子字段

我想这会让你接近你想要的东西


基本上,我建议保留一个选项卡,显示已选择的字段,并根据子字段的表单\字段\ id连接唯一字段,不断重新评估子字段

需要更清晰或者JSFIDLE?id应该是唯一标识符
“form\u field\u id”:1,
,为什么不在id前面加上表单名称,
“form\u field\u id”:“form 2-1”
需要更清晰或者JSFIDLE?id应该是唯一标识符
“form\u field\u id”:1,
,为什么不在id前面加上表单名称,
“form\u field\u id”:“Form 2-1”
谢谢。但是,当我将angular版本升级到1.4.8时,它会断开连接。但是,当我将angular版本升级到1.4.8时,它会断开连接
var selectedFormFields = {};

$scope.uniqueFields = {};

$scope.toggleFormField = function(formField) {
  // Determine whether or not this field should be added or removed
  if (selectedFormFields[formField.form_id]) {
    delete(selectedFormFields[formField.form_id]);
  } else {
    selectedFormFields[formField.form_id] = formField.form_field_list;
  }

  // Re-evaluate all of the unique fields with the updated selected form fields
  $scope.uniqueFields = {};
  for (var i in selectedFormFields) {
    for (var j in selectedFormFields[i]) {
      $scope.uniqueFields[selectedFormFields[i][j].form_field_id] = selectedFormFields[i][j];
    }
  }
}