ng Выберите не заполнять ajax-данные при загрузке страницы
У меня есть угловое веб-приложение, которое имеет следующее:
<select ng-model="modelObject.users" ng-options="users.name for users in ajaxData">
</select>
и контроллер, который заполняет выбор через данные ajax. Проблема, с которой я столкнулся, заключается в том, что данные в выборке не заполняются до тех пор, пока выбор не будет нажат, а затем не сфокусирован. После этого у выбора будут все заполненные данные при повторном нажатии.
Это ошибка или по какой-то причине данные / опции изначально не вставляются в объект select.
Я попытался сделать что-то похожее на это: angular.js select не показывает значение опции в начале и просмотрел много других вопросов о переполнении стека. Моя проблема отличается тем, что:
В выборе нет НИКАКИХ опций, пока пользователь не щелкнет по нему и не сфокусирует его. Где, как и большинство других ответов, в отношении того, что верхний вариант изначально не выбран.
2 ответа
Предполагая, что вы используете jquery для получения данных, в вашем обработчике успеха Ajax, когда вы обновите переменную области действия с вашими данными ответа, используйте
$scope.$apply()
,
это должно обновить представление с вашими данными.
Инициализируйте ng-модель тега select, который отобразит опцию в выпадающем списке.