我的Html视图:一旦用户选择了这两个选项,它应该调用控制器内的一个函数
<div class="col-lg-7">
<ui-select on-select="onSelectedFetchDD($item)" ng-model="ctrl.GetPlatformRegionName.selected" theme="selectize" ng-disabled="ctrl.disabled" title="Choose a GetPlatformRegionName" append-to-body="true">
<ui-select-match placeholder="-- Select --">{{$select.selected.dropDownText}}</ui-select-match>
<ui-select-choices repeat="GetPlatformRegionName in ctrl.GetPlatformRegionNameList.value | filter: $select.search">
<span ng-bind-html="GetPlatformRegionName.dropDownText | highlight: $select.search"></span>
</ui-select-choices>
</ui-select>
</div>
<div class="col-lg-7">
<ui-select ng-model="ctrl.GetGsmName.selected" theme="selectize" ng-disabled="ctrl.disabled" title="Choose a GetGsmName" append-to-body="true">
<ui-select-match placeholder="-- Select --">{{$select2.selected.dropDownText}}</ui-select-match>
<ui-select-choices repeat="GetGsmName in ctrl.GetGSMNameList.value | filter: $select2.search">
<span ng-bind-html="GetGsmName.dropDownText | highlight: $select2.search"></span>
<small ng-bind-html="GetGsmName.dropDownValue | highlight: $select2.search"></small>
</ui-select-choices>
</ui-select>
</div>
我的控制器这是我控制器中的功能
$scope.fetchDD = function () {
GSMList.then(function (result) {
vm.GetGSMNameList = result.data;
});
PlatformMasterSchList.then(function (result) {
vm.GetPlatformMasterSchNameList = result.data;
});
};
答案 0 :(得分:1)
我会在第二个ui-select中添加一个函数,为#selected构建一个计数器,并调用一个函数来检查是否已达到该数:
(忽略HTML中的空格,SO不断擦除它)
withValueBackReference
RawContact
这个方法会将检查器函数的增量处理为DRY代码:
<ui-select ng-model="ctrl.GetGsmName.selected" theme="selectize"
ng-disabled="ctrl.disabled" title="Choose a GetGsmName" append-to-body="true"
on-selected="onSelectedFetchOther()">
var actOnSelectCount = 2;
var selectCount = 0;
$scope.onSelectedFetchOther = function() {
selectCount++;
doSomethingWhenNumSelected();
}
$scope.onSelectedFetchDD = function(item) {
selectCount++;
doSomethingWhenNumSelected();
}
function doSomethingWhenNumSelected = function() {
if (selectCount === actOnSelectCount) {
console.log("Doing something, 2 were selected!");
}
}
答案 1 :(得分:0)
从两个下拉菜单中调用相同的函数on-change(ng-change)。 检查功能内部的条件并执行相应的操作。
答案 2 :(得分:0)
否则,您无需在控制器中创建任何功能即可完成此操作。首先,您的变量需要在控制器中启动:
$scope.GetPlatformRegionName = {}
$scope.GetGsmName = {}
在您看来,您可以使用&amp;&amp; 运算符,只有在定义了其他变量时才调用on-select函数,如下所示:
on-select="ctrl.GetPlatformRegionName.selected && yourFunctionToCall()"
对于第二个ui-select:
on-select="ctrl.GetGsmName.selected && yourFunctionToCall()"
然后只有在选择了booth ui-select时才会调用该函数。
Here是一名工作人员。