使用多个ng-model

时间:2017-01-01 05:20:42

标签: javascript angularjs angularjs-ng-repeat angularjs-ng-model angularjs-ng-options

我有天用户选项。

当用户点击提交

时,我的预期输出将是
  • 如果选择星期一和星期二,则应为[1,2]
  • 如果选择工作日,则应为字符串'weekdays'

我在这里有太多限制,因为api严重嵌套,所以我更喜欢硬编码天数值。但我不知道如何继续前进。我能想到的唯一方法是为每个输入分配ng-model并进行推送,但我觉得这不合适。

http://plnkr.co/edit/NfTgmsuZlGh6QUVZj8HG?p=preview

需要帮助。

2 个答案:

答案 0 :(得分:1)

您也可以尝试这种方式 在控制器

  $scope.items = [{"day":"monday","show":"1"},{"day":"tuesday","show":"2"},{"day":"weekdays","show":"weekdays"}];

in html

<select ng-model="selection" ng-options="item.show as item.day for item in items">
     <option value="">Please select</option>
</select>

输出:{{selection}}

答案 1 :(得分:0)

尝试这种方式:

// change this
noteText = aCoder.encode(noteText, forKey: "noteText")

// into
aCoder.encode(noteText, forKey: "noteText")

<div class="days-group" ng-repeat="timeType in timeTypes"> <input type="checkbox" id="Weekdays" value="weekdays" ng-model="timeType.isSelected" ng-checked="timeType.isSelected"> <label for="Weekdays">{{timeType.type}}</label> </div>

controller

天也一样。

检查工作$scope.timeTypes = [ { id: 1, type: "weekends", isSelected: false }, { id: 2, type: "weekdays", isSelected: false } ]; 链接:

jsfiddle

检查https://jsfiddle.net/avnesh2/oho7qxv1/ 是否需要格式。

干杯。