【问题标题】:AngularJS - exclude array key in ng-repeatAngularJS - 在 ng-repeat 中排除数组键
【发布时间】:2015-12-19 06:01:30
【问题描述】:

我有以下数组:我得到键并根据键生成选择输入,选项是值。所以最后我有四个选择/下拉菜单,每个都有两个值。

{
  sku: "401150201025",
  test1: "2,0x1,0",
  test12: "2,5",
  test13: "15,0"
},
{
  sku: "401060120714",
  test1: "1,2x0,7",
  test12: "1,4",
  test13: "6,0"
}  

如何过滤“sku”键,以免出现“sku”选择。

  <fieldset class="form-group" ng-repeat="(filterName, values) in availableFilters">
    <label class="pull-left"><% filterName %></label>
    <select class="form-control configurator-radio form-control-lg" ng-model="filter[filterName]">
        <option value="!" selected>Alle</option>
        <option value="<% value %>" ng-repeat="value in values"><% value %></option>
    </select>
  </fieldset>  

这就是我生成下拉菜单的方式。

【问题讨论】:

    标签: javascript angularjs select filter


    【解决方案1】:

    假设 filterName 在 ng-repeat 中的一次迭代中为“sku”,您可以使用 ng-if 不显示它。它根本不会被添加到 DOM 中。

    <select ng-if="filterName != 'sku'" class="form-control configurator-radio form-control-lg" ng-model="filter[filterName]">
    

    【讨论】:

      【解决方案2】:

      使用 ng-show 或 ng-hide

      这使您可以根据值显示某些内容。

      ng-show="value.sku == 'some_sku_value'"
      

      您也可以将ng-hide 用于几乎相同的事情。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多