我正在创建一个Web应用程序,我正在使用bootstrap selectpicker进行选择..但我正在使用angularjs来填充选择选择器..我有2个选择在第一个选择值的基础上填充一个内容而不重新加载。 。我可以在没有selectpicker的情况下完美地工作,而当使用selectpicker时它不起作用..我的代码是
<div class="form-group" data-ng-controller="MARK_ENTRY_CONTROLLER">
<div class="row">
<div class="col-md-6 " style="margin-top: 7px;">
<label>Select Class</label>
</div>
<div class="col-md-6 text-center">
<select class="form-control" title="Select Class"
name="fromClass" ng-change="EXAM_LIST_JSON(fromClass)"
ng-model="fromClass"
ng-options="fromClass.id as fromClass.course + ' ' + fromClass.section for fromClass in ALL_CLASS">
</select>
</div>
</div>
<div class="row" style="height: 10px"></div>
<div class="row">
<div class="col-md-6 " style="margin-top: 7px;">
<label>Select Examination</label>
</div>
<div class="col-md-6 text-center" >
<select class="form-control" name="examination"
ng-change="SUBJECT_LIST_IN_EXAM_JSON()"
ng-model="examination"
ng-options="examination.id as examination.name for examination in EXAM_LIST"></select>
</div>
</div>
和控制器是
<script>
function MARK_ENTRY_CONTROLLER($scope, $http) {
$http.get("<%=request.getContextPath()%>/ALL_CLASS_JSON?AAdvisorId=${uid}").success(function(response) {
$scope.ALL_CLASS = response;
$scope.EXAM_LIST_JSON = function(id){
$http.get("<%=request.getContextPath()%>/EXAM_LIST_JSON?fromClass="+id)
.success(function(response) {
$scope.EXAM_LIST = response;
$scope.$apply();
});
}
});
}
</script>
在控制器中,使用json格式从json文件获取数据列表。 请帮帮我......
答案 0 :(得分:8)
bootstrap-select会隐藏所有选择器,选择器的数据会在执行命令$(&#39; select&#39;)。selectpicker()。
之后出现。但如何解决问题呢?
我遇到了类似的问题:
<select class="fontsize" data-style="btn-info" name="fontsize" ng-controller="fontSize">
<option data-ng-repeat="size in sizes" name="{{size}}" value="{{size}}">{{size}}</option>
</select>
我的控制器
app.controller('fontSize', function($scope, $http) {
$http.get("/getSelector/font-size")
.success(function(response) {
$scope.sizes = response.records;
// TODO: How to refresh the selectpicker after changing of scope?
});
});
您可以在收到数据后刷新selectpicker:
$scope.$watch(function() {
$('.fontsize').selectpicker('refresh');
});
好的,我希望这对你有帮助。