2016-10-23 4 views
0

Я использую ui-grid v3.2.9. У меня есть сетка с встроенным редактированием, одно из редактирования ячейки - выпадающее меню. Я хочу получить массив для управления выпадающим списком каждый раз, когда я нажимаю на эти ячейки. Я пытаюсь использовать editDropdownOptionsFunction для загрузки JSON для выпадающего списка:

 columnDefs: [ 

     { 
      name: 'serial', 
      displayName: 'Serial', 
      width: 100, 
      enableCellEdit: true, 
      editableCellTemplate: 'ui-grid/dropdownEditor', 
      editDropdownIdLabel: 'id', 
      editDropdownValueLabel: 'id', 
      editDropdownOptionsFunction: function(rowEntity, colDef){ 
       var res = []; 
       $http.get('index.php?r=docs/serialsjson2&recid=' + rowEntity.id) 
        .success(function (data) { 
         res = data;          
        }); 

       return res; 
      } 
     }, 

    ], 

Но, как я понимаю $ http.get закончил слишком поздно и не заливок не dropdownarray. Помогите мне пожалуйста. Как мне нужно сделать запрос данных с сервера на виджет выпадающего списка в момент щелчка?

ответ

0

Загрузка выпадающих данных происходит после того, как данные возвращаются в функцию успеха. Только для ускорения получения данных происходит простое получение данных без дополнительных циклов или операций запроса [повторного фактора].

Если этого не происходит, вы можете просто попробовать добавить spinner (loader) в http-перехватчик и отключить выпадающий список до тех пор, пока данные не будут заполнены.

Существует много способов реализации прядильщиков и скрытных слоев для выпадающего списка. Ниже приведен пример ссылки Spinner and Overlay

 Смежные вопросы

  • Нет связанных вопросов^_^