【问题标题】:AngularJS - select based on another oneAngularJS - 基于另一个选择
【发布时间】:2016-09-28 17:35:04
【问题描述】:

我有这个 JSON:

{
    "world": [{
        "name": {
            "en": "America"
        },
        "type": "continent",
        "children": [{
            "type": "state",
            "name": {
                "en": "Florida"
            }
        }, {
            "type": "state",
            "name": {
                "en": "Hawaii"
            }
        }]
    }, {
        "name": {
            "en": "Europe"
        },
        "type": "continent",
        "children": [

        ]
    }]
}

我需要做两个选择。第一个包含“大陆”类型的选择,如果第一个孩子的 > 0 并且包含州的选择,则必须显示基于第一个的另一个。

【问题讨论】:

  • 一些js呢?你的代码在哪里?

标签: angularjs json html-select


【解决方案1】:

你可以这样做,

 <select name="client" ng-model="selectedRequest.continent" ng-options="c.name.en for c in clients.world" required></select>
 <select id="department" ng-model="selectedRequest.state" ng-options="d.name.en for d in  selectedRequest.continent.children"></select>

DEMO

编辑

Updated fiddle disabling select if children is empty

【讨论】:

  • 你的答案似乎很完美。如果没有孩子,如何隐藏第二个选择?
  • 使用 ng-show 并添加您的条件,如果有帮助则标记为答案
  • ng-show="selectedRequest.continent.children > 0" 对我不起作用
  • @paolopolix 你检查了吗
  • 如果你检查你的小提琴中的控制台,你会看到一些错误。我该如何解决它们?
猜你喜欢
  • 2021-09-10
  • 2019-02-14
  • 1970-01-01
  • 1970-01-01
  • 2019-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多