Javascript 异步调用后,(HTML)列表框元素中仅显示第一个字符

Javascript 异步调用后,(HTML)列表框元素中仅显示第一个字符,javascript,html,ajax,angularjs,internet-explorer-9,Javascript,Html,Ajax,Angularjs,Internet Explorer 9,我有一个关于AngularJS/IE9的问题 我有一个带有患者列表的模式窗口 <div class="modal-header"> <h3 class="modal-title">Patient list</h3> </div> <div class="modal-body"> <div> <input class="form-control" ng-m

我有一个关于AngularJS/IE9的问题

我有一个带有患者列表的模式窗口

    <div class="modal-header">
        <h3 class="modal-title">Patient list</h3>
    </div>
    <div class="modal-body">
    <div>
         <input class="form-control" ng-model="searchText"/>
    </div>
    <div class="col-md-12">
        <select size="15" class="list-group">
            <option ng-repeat="patient in patientList | filter:searchText" ng-click="..">
                {{patient.patientName}}
            </option>
        </select>
    </div>
因此,此服务将注入PatientController

function PatientController($scope, $modalInstance, patientService) {
    $scope.patientList = patientService.getFullPatientList();
}
在Chrome、FF、Safari中,我可以在UI上正确查看患者列表框,但在IE9中,我可以看到以下屏幕: 仅显示列表项中的第一个符号

当我替换(例如)简单列表上的listbox时,一切正常

我认为,这是因为数据加载了异步调用,即没有刷新数据。 所以,我试着这样做:

    function PatientController($scope, $modalInstance, patientService) {
        $scope.patientList = patientService.getFullPatientList().then(function(data){
            $scope.patientList = data;
            $scope.$apply();
        });
    }
但它也没有带来结果

请,帮助或建议我:)
谢谢

问题在于列表框显示不正确。默认情况下,在IE9中,选择样式中的“显示”属性未指定

我使用JQuery代码来解析它:

patientService.getFullPatientList().then(function(data) {
    $scope.patientList = data;
    $('.list-group').width('95%'); //SOLVE
});

你能举个小提琴的例子吗?
patientService.getFullPatientList().then(function(data) {
    $scope.patientList = data;
    $('.list-group').width('95%'); //SOLVE
});