view:"richselect": Об обновлении popup options.

view:"richselect" - элемент view:"window". Окно модальное. Формируется в корневом view ( this.ui(win) ).

options для view:"richselect" формируется на сервере ( options:"url" ).

Активный элемент из richselect выводится ещё и в текстовое поле, в котором его можно править. После правки актуализирую текущую запись в richselect через refresh. А вот обновить изменённые из текстового поля на сервере данные в popup списке, из которого выводится текущая запись - не могу...

То есть, обновление options:"url" возможно только через выгрузку окна и повторный запуск его ( this.ui(win) )?

Ни refresh, ни render элемента richselect не обновляют options:"url".

Comments

  • edited April 15

    попробуйте это:

    var updated = {id:'item_id', value:'new_value'};
    combo.getList().updateItem('item_id', updated);
    

    если вы не уверены, что редактирование происходит после загрузки данных, то лучше использовать waitData

    var updated = {id:'item_id', value:'new_value'};
    var list = combo.getList();
    list.waitData.then(function(){
        list.updateItem('item_id', updated);
    })
    
  • Спасибо. Попробую.

  • Ещё раз спасибо, intregal !

    Не понял вначале, зачем так сложно.
    Такая связка мне помогала одно врмя:
    webix.$$("...").getPopup().getList().clearAll();
    webix.$$("...").getPopup().getList().load("...");

    Но когда id не меняется, а value меняется - без этой фишки ничего не сделал бы... Даже с консоли делаешь clearAll(), а в поле combo or richselect остаётся старое значение. . .

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!