Как установить обновленное значение в поле поиска по умолчанию после обновления в директиве angularjs ui-select? - PullRequest
0 голосов
/ 08 декабря 2018

Я столкнулся с проблемой в директиве angularjs ui-select.Он работает нормально, он показывает мне полные данные в раскрывающемся списке.Когда я выбираю значение в поле поиска и хочу обновить его, оно обновляется, но не может отображаться по умолчанию в поле поиска.Я должен вручную искать снова, чтобы увидеть обновленное значение.Позвольте мне вставить код ...

Вот код angularjs

$scope.consignee = [];
$http.get("get-consignee", {
 }).then(function(response){

 $scope.consignee = response.data;
 //$scope.consignee.selected = $scope.consignee[0];
 });

Вот код выбора пользовательского интерфейса

 <ui-select ng-model="consignee.selected" theme="select2">

 <ui-select-match placeholder="Select Consignee">

    <% $select.selected.CONSIGNEE_NAME %>

 </ui-select-match>

 <ui-select-choices ng-repeat="e in consignee | filter: $select.search">

   <div><% e.CONSIGNEE_NAME %></div>

 </ui-select-choices>

 </ui-select>

Допустим, у меня есть 5 получателейимена в раскрывающемся списке, как!

 1. hamad
 2. test2
 3. yasin Gul
 4. hamid
 5. munir

Так что проблема в том, что когда я использую этот $scope.consignee.selected = $scope.consignee[0];, то при индексе 0 он дает мне hamad имя после обновления, даже если я обновляю test2 или yasin Gul это дает мне hamad по умолчанию, установленное в поле поиска.Я знаю, что у меня есть индексы 0, 1, 2, 3, 4, но я хочу, чтобы они динамические, а не ручные.И я хочу установить только то имя, которое я обновляю.Если я обновлю test2, чтобы он дал мне test2 по умолчанию, установленный в поле поиска после обновления, и то же самое для yasin Gul и т. Д. Любая помощь будет признательна Спасибо

enter image description here

1 Ответ

0 голосов
/ 10 декабря 2018

cons_id - выбранный вами идентификатор базы данных.

$scope.consignee = [];
$http.get("get-consignee", {
 }).then(function(response){

 $scope.consignee = response.data;
 var index = $scope.consignee.findIndex(x => x.CONSIGNEE_ID==cons_id); // use this
 $scope.consignee.selected = $scope.consignee[index]; 
});
...