动态添加选项到Angular选定的组合框

时间:2016-01-21 06:49:07

标签: javascript angularjs twitter-bootstrap-3 angular-ui

以下代码无效:

<select ui-jq='chosen' ng-model='trainer_list' multiple class="form-control" data-placeholder="Select Multiple Trainers" ng-options='trainer.id as trainer.name for trainer in trainers'>

</select>

我从Angular Bootstrap主题中获取了这个,并且我努力使用它。基本上我想使用这个角度脚本

$http({
        method: 'GET',
        url: 'http://localhost/training_system/retrieve_train.php?trainer=Y'
}).success(function (result) {
    $scope.trainers = result;

});

并在组合框中使用它,我不能使用静态选项,这显然是唯一有效的选项。我该怎么办?

更新:所以我尝试使用ng-repeat代替ng-options的Abhilash解决方案,并且它在前几次尝试中起作用。但现在我再也无法重复了,而我所拥有的只是一个空的Dropbox。我没有改变任何东西,但它不再有效。 ui-jq是否可能与AngularJS不兼容?

2 个答案:

答案 0 :(得分:0)

试试这个:

<select ui-jq='chosen' ng-model='trainer_list' multiple class="form-control" data-placeholder="Select Multiple Trainers">
    <option value="{{trainer.id}}" ng-repeat="trainer in trainers"> {{trainer.name}} </option>
</select>

调试变量trainers

只需在页面的任何位置添加此代码即可进行调试,

<label> To Do: Remove this after testing. Trainer = {{trainers}} </label>

看看培训师的价值观是什么。服务器调用后,此变量是否正在更新?

答案 1 :(得分:0)

这是我解决它的方式:

在您的选择标记中,输入ng-if =“trainers”。这将阻止DOM加载,直到您的http请求完成