0

我有 ui-select2 下拉列表,它取决于父级的选择。我为第一个 ui-select2 提供了一系列选项,然后当从该下拉列表中选择某些内容时,将出现下一个下拉列表。第二个下拉菜单的可用选项取决于第一个下拉菜单中选择的内容。ng-repeat 指令正在迭代一系列选择。这是html和js代码。

HTML:

<select name="application" placeholder="Select a Tenant" ng-disabled="!sharedObj.tenantApplications || sharedObj.tenantApplications.length == null" class="form-control" id="application" ng-change="vmOrderItem.vmNameUSI=null" ui-select2 ng-model="vmOrderItem.tenantApplication" title="Select tenant application" data-style="btn-default" required><option></option> <option ng-repeat="tenantApplication in sharedObj.tenantApplications | filter:tenantFilter()" value="{{tenantApplication.id}}">{{tenantApplication.name}} </option> </select>

JS:

/** Filters the tenant depending on what domain is selected */
$scope.tenantFilter = function(tenantApplication) {
  $scope.sharedObj.tenantApplications;
  tenantApplication.name;
  tenantApplication.id;
  return true;
  /*    return $scope.vmOrderItem.domain.id == tenantApplication.domainId;*/
}

我得到的问题是,即使我返回 true,下拉菜单上也不会出现任何内容。我这样做是为了测试逻辑。我不知道为什么函数中的tenantApplication 参数总是未定义。我使用谷歌浏览器检查元素插入断点,它抱怨参数未定义。但是我不明白为什么当我返回 true 时它不能正常工作。我是 JavaScript 和 AngularJS 的新手,因此非常感谢任何帮助。我已经完成了所有 AngularJS 示例并阅读了他们的文档,但我仍然只是一个初学者。

4

1 回答 1

2

认为这应该是:

<option ng-repeat="tenantApplication in sharedObj.tenantApplications |
 filter:tenantFilter" value="{{tenantApplication.id}}">
于 2014-08-11T12:38:00.360 回答