Javascript 异步调用后,(HTML)列表框元素中仅显示第一个字符
我有一个关于AngularJS/IE9的问题 我有一个带有患者列表的模式窗口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
<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
});