Javascript 根据ng grid selectedItem[0]更改下拉选项
首先,我要感谢您花时间阅读本文,我很抱歉没有粘贴我的代码,我所做的工作是在一个没有互联网连接的服务器上进行的。我想我可以解释我所问的问题,也许还可以很好地键入一些伪代码,让大家理解我的观点 我有一个带有角度控制器的html页面。HTML页面使用ng网格显示表示数据库中的行的项目列表。当选择列表中的项目且下拉列表为自动提交时,将显示下拉列表Javascript 根据ng grid selectedItem[0]更改下拉选项,javascript,jquery,html,angularjs,twitter-bootstrap,Javascript,Jquery,Html,Angularjs,Twitter Bootstrap,首先,我要感谢您花时间阅读本文,我很抱歉没有粘贴我的代码,我所做的工作是在一个没有互联网连接的服务器上进行的。我想我可以解释我所问的问题,也许还可以很好地键入一些伪代码,让大家理解我的观点 我有一个带有角度控制器的html页面。HTML页面使用ng网格显示表示数据库中的行的项目列表。当选择列表中的项目且下拉列表为自动提交时,将显示下拉列表 ng-change="processOptions(dropdown_options)" 所选项目是控制器中作用域的一部分: $scope.selected
ng-change="processOptions(dropdown_options)"
所选项目是控制器中作用域的一部分:
$scope.selectedItem=[];
$scope.filterOptions = function() {
if ($scope.selectedItem[0]) {
if ($scope.selectedItem[0].color === "GREEN") {
$scope.dropdownOptions = [
{label: "Option Blue", value: "BLUE"},
{label: "Option Yellow", value: "YELLOW"}
]
}
else if .....and so on {
}
}
return $scope.dropdownOptions;
}
该下拉列表将根据所选网格中的项目显示。。精心挑选的
ng-show="selectedItem[0]"
下拉选项在控制器中定义为:
$scope.dropdownOptions = [
{label: "Option Blue", value: "BLUE"},
{label: "Option Green", value: "GREEN"},
{label: "Option Yellow", value: "YELLOW"},
];
上述措施效果良好。现在我要做的是使选项以selectedItem[0].color中的值为条件
当选择EdItem[0].color==“蓝色”时,我只希望显示绿色和黄色选项。。依此类推,如果color=“GREEN”,则选项中仅显示蓝色和黄色
我如何做到这一点?当定义了调用函数的selectedItem[0]时,是否还有另一个ng控制器可以触发?您正在寻找的是 具有您需要的功能。事实上,我无法让ng筛选器或一般筛选器正常工作,因为。。我找到的所有例子都根据一些文本过滤了列表。。包括部分匹配或完全匹配文本的项目。在这种情况下,我需要它来排除精确匹配。ng filter建议将我引向了正确的方向,不久之后,我最终提出了以下解决方案,该解决方案有效且不会干扰标记中的任何其他操作。这似乎有点笨拙,所以如果有一个更好的解决方案,确实涉及ng过滤器,请填写我
ng-options="opt.label for opt in filterOptions()"
然后在控制器中:
$scope.selectedItem=[];
$scope.filterOptions = function() {
if ($scope.selectedItem[0]) {
if ($scope.selectedItem[0].color === "GREEN") {
$scope.dropdownOptions = [
{label: "Option Blue", value: "BLUE"},
{label: "Option Yellow", value: "YELLOW"}
]
}
else if .....and so on {
}
}
return $scope.dropdownOptions;
}