Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在AngularJS中,如何更改select的默认选项?_Javascript_Angularjs - Fatal编程技术网

Javascript 在AngularJS中,如何更改select的默认选项?

Javascript 在AngularJS中,如何更改select的默认选项?,javascript,angularjs,Javascript,Angularjs,我正在使用AngularJS。有两个选择,第一个是“团队选择”,第二个是“成员选择”。如果“团队选择”有成员,“成员选择”显示“选择成员”。如果“团队选择”没有成员,“成员选择”显示“没有成员” 我的问题是如何更改“成员选择”的默认选项 这是我的代码: <script src="angular.js"></script> <div class="bigDiv"> <select class="common_select" name="xxx" n

我正在使用AngularJS。有两个选择,第一个是“团队选择”,第二个是“成员选择”。如果“团队选择”有成员,“成员选择”显示“选择成员”。如果“团队选择”没有成员,“成员选择”显示“没有成员”

我的问题是如何更改“成员选择”的默认选项

这是我的代码:

<script src="angular.js"></script>
<div class="bigDiv">
    <select class="common_select" name="xxx" ng-options="item as item.teamname for item in team_array" ng-model="select_team" id=""  ng-change="selectMemberFun(select_team)">
        <option value="" disabled selected hidden>select a team</option>
    </select>
    <select class="common_select" name="xxxxx" id="" ng-options="item as item.name for item in  select_team.members" ng-model="select_member">
        <option ng-show="!have_member" value="" disabled selected hidden>no member</option>
        <option ng-show="have_member" value="" disabled selected hidden>select a member</option>\
    </select>
</div>
<script src="angular.js"></script>

    <script>
      angular.module('app',[]).controller('xxx',['$scope', function ($scope) {
          $scope.have_member = false;
          $scope.team_array = [
              {teamname: "team1", members:[ {name:'team1member1'}, {name:'team1member2'}]},
              {teamname: "team2", members:[ {name:'team2member1'}, {name:'team2member2'}]},
              {teamname: "team3", members:[]},
          ];
          $scope.selectMemberFun = function (team) {
              if(team.members.length == 0){
                  $scope.have_member = false;
              } else {
                  $scope.have_member = true;
              }
          }
      }])
</script>

选队
没有成员
选择一个成员\
角度.module('app',[]).controller('xxx',['$scope',function($scope){
$scope.have_member=false;
$scope.team_数组=[
{teamname:“team1”,成员:[{name:'team1member1'},{name:'team1member2'}]},
{teamname:“team2”,成员:[{name:'team2member1'},{name:'team2member2'}]},
{团队名称:“团队3”,成员:[]},
];
$scope.selectMemberFun=功能(团队){
if(team.members.length==0){
$scope.have_member=false;
}否则{
$scope.have_member=true;
}
}
}])

为什么“ng show”指令不起作用?“成员选择”始终显示“无成员”。

根据文档->


---请选择--
选择1
选择2

根据文档->


---请选择--
选择1
选择2

我尝试了几种方法,看起来这一种很有效

angular.module('app',[]).controller('TestController',['$scope',
职能($范围){
$scope.have_member=false;
$scope.team_数组=[{
团队名称:“团队1”,
成员:[{name:'team1member1'},{name:'team1member2'}]
}, {
团队名称:“团队2”,
成员:[{name:'team2member1'},{name:'team2member2'}]
}, {
团队名称:“团队3”,
成员:[]
}, ];
$scope.selectMemberFun=功能(团队){
if(team.members.length==0){
$scope.have_member=false;
}否则{
$scope.have_member=true;
}
}
}
])

选队
{{have_member?'select a member':'no member'}

我尝试了几种方法,看起来这一种很有效

angular.module('app',[]).controller('TestController',['$scope',
职能($范围){
$scope.have_member=false;
$scope.team_数组=[{
团队名称:“团队1”,
成员:[{name:'team1member1'},{name:'team1member2'}]
}, {
团队名称:“团队2”,
成员:[{name:'team2member1'},{name:'team2member2'}]
}, {
团队名称:“团队3”,
成员:[]
}, ];
$scope.selectMemberFun=功能(团队){
if(team.members.length==0){
$scope.have_member=false;
}否则{
$scope.have_member=true;
}
}
}
])

选队
{{have_member?'select a member':'no member'}

它不起作用,因为
ngOptions
类似于
ngReapeat
,它只在
select\u团队中有值时才会迭代。成员
数组。在Team3中,成员数组为空,因此跳过所有内部

它不起作用,因为
ngOptions
类似于
ngReapeat
因为只有在
选择\u team.members
数组中有值时,它才会迭代。在Team3中,成员数组为空,因此跳过所有内部

您不能隐藏
标记,不支持跨浏览器隐藏
标记,不支持跨浏览器
<select name="singleSelect" id="singleSelect" ng-model="data.singleSelect">
      <option value="">---Please select---</option> <!-- not selected / blank option -->
      <option value="{{data.option1}}">Option 1</option> <!-- interpolation -->
      <option value="option-2">Option 2</option>
 </select>