如何根据需求条件返回ng-model的当前值

时间:2014-12-15 19:00:44

标签: angularjs

我有一个使用ng-options填充的选择框,我需要根据选择框中选择的内容有条件地更改某些字段的要求。我的函数来检查值是否在数组中:

  $scope.getBTypeSelected = function () {
    return $scope.formData.businessType;
  };
  // Business Type conditionals
  $scope.isRequired = function() {
    var notRequired = ['2', '5', '6', '7', '12', '80'];
    if ($.inArray($scope.getBTypeSelected(), notRequired) == -1) {
      return false;
    }else {
      return true;
    }
  };

我已经尝试过观察范围变量以进行更改并更新它,并且我已经尝试通过函数检索当前值到目前为止无效。

我知道条件符号正在获取该变量的初始值,但我不明白为什么我无法更新它。

以下是一位了解我的问题的人:http://plnkr.co/edit/FKFvDu2RMjDKRva6JYwi?p=preview

感谢任何帮助!

1 个答案:

答案 0 :(得分:4)

您正在将字符串与整数进行比较。您的数组包含字符串,但您选择的项目是整数,因此inArray始终返回false。我将数组更改为整数,并按预期工作。

var notRequired = [2, 5, 6, 7, 12, 80];