我有 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 示例并阅读了他们的文档,但我仍然只是一个初学者。