如何将所选项目存储在模型的“选择”字段中?

时间:2014-04-17 16:24:55

标签: javascript angularjs ng-switch

我想在标签或列表中显示所选项目。

我正在使用开关在表单和结果之间切换。请参阅以下代码

<div ng-switch on="format">  
   <div ng-switch-when="form">
     <div class="floatLeft">Seeeeeelect</div>
      <select multiple="multiple" ng-model="test">
        <!--<option value ="sdfsdf" ng-repeat="n in ['a','b','c']">{{n}}</option>-->
        <option value ="AAA">AAA</option>
        <option value ="BBB">BBB</option>
        <option value ="CCC">CCC</option>
      </select>
      {{test}}
   </div>
   <div ng-switch-when="result">{{test}}</div>
 </div>

<button ng-click="showForm()">Form</button>
<button ng-click="showPreview()">Result</button>

在控制器中,我有以下方法,

    $scope.showPreview=function() {
    $scope.format='result';

  };

      $scope.showForm=function() {
        $scope.format='form';
      };

选择列表中的项目后,当我尝试通过点击“结果”按钮切换到“结果”时。所选项目未填充。

谁能告诉我哪里出错了。

由于

1 个答案:

答案 0 :(得分:1)

ng-switch创建子范围。因此,您必须test引用$parent.test

<select multiple="multiple" ng-model="$parent.test">


<div ng-switch-when="result">{{ $parent.test }}</div>


  </select>
    {{ $parent.test }}
</div>

fiddle