我正在使用 Angular Material ,我被困在多选下拉菜单中,我在其中选择了多个选项,在 ng-change 上,我正在调用函数,该函数将获取每个选项的 id,我将比较 API id,但正如我所言选择它将提供类似功能的数据 在第一个选项选择中 123456 在第二个选项选择中 123456,456231
在第三个选项选择中 123456,456231,471258
所以每当我进行比较时,它只会进入条件一次,即使我尝试拆分它也会出现错误并且不执行任何操作。
<md-select ng-model="$parent.follower" placeholder="Select Person" multiple="true" ng-change="getFollowers(follower)">
<md-option ng-repeat="follower in followers" value="{{follower.id}}"> {{follower.full_name}}</md-option>
</md-select>
所以让我知道如何处理这种情况,如果有人有经验并且非常擅长请告诉我。
谢谢 希瓦姆
最佳答案
我为您创建了 Codepen,您可以在其中看到每次值的变化 因为我不知道你的数据格式,所以我使用了一个演示
HTML
<div ng-controller="AppCtrl as ctrl" class="md-padding selectdemoBasicUsage" ng-app="MyApp">
<div>
<h1 class="md-title">Enter an address</h1>
<div layout="row">
<md-input-container>
<label>Street Name</label>
<input type="text">
</md-input-container>
<md-input-container>
<label>City</label>
<input type="text">
</md-input-container>
<md-select placeholder="State" ng-model="ctrl.userState" multiple="true" ng-change='changeValue(ctrl.userState)'>
<md-option ng-repeat="state in ctrl.states" value="{{state.abbrev}}">{{state.abbrev}}</md-option>
</md-select>
</div>
</div>
</div>
Angularjs 代码
'use strict';
angular
.module('MyApp')
.controller('AppCtrl', function($scope,$http) {
this.userState = '';
this.states = ('AL AK AZ AR CA CO CT DE FL GA HI ID IL IN IA KS KY LA ME MD MA MI MN MS ' +
'MO MT NE NV NH NJ NM NY NC ND OH OK OR PA RI SC SD TN TX UT VT VA WA WV WI ' +
'WY').split(' ').map(function (state) { return { abbrev: state }; });
$scope.changeValue=function(value){
console.log(value);
$http.post(//url).then(function(response){
//handle response here
});
}
});
Codepen 工作解决方案 http://codepen.io/anon/pen/WvygLZ
关于javascript - Angularjs Material 或 AngularJS 在 Web 服务中存储多个选择下拉数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31408810/