Webix: ответ AJAX для обновления данных древовидного меню

У меня есть следующий фрагмент кода, и я хотел бы получить данные на стороне сервера для выборки данных на основе выбора в комбо. Пока это работает и получает данные с сервера, но я не могу понять, как обновить эти данные в древовидном меню.

<script type="text/javascript" charset="utf-8">
var combo = webix.ui({
    container: 'combo_menu',
    view: "combo",
    label: "Unit",
    labelPosition: "top",
    labelAlign: 'left',
    placeholder: "Select Unit",
    id: "bu_select",
    options: "rest->/units.json",
    button: true
});

var tree = webix.ui({
    container: "tree_menu",
    view: "tree",
    id: "treeMenu",
    select: true,
    height: 500,
    data: []
});

webix.ready(function () {
    webix.ui({
        combo,
        tree
    });
});

$$("bu_select").attachEvent("onChange", function (sel, oldv) {
    webix.message("Value changed from: " + oldv + " to: " + sel);

    $.ajax({
        url: "tree_data",
        type: "GET",
        dataType: 'script',
        data: {bu_id: sel},
        success: function (data) {
            webix.message(data);
            $$("treeMenu").updateItem(data)
        }
    });
});
</script>

Это не работает. $$("tree-menu").updateItem(data)

Любые советы приветствуются.


person ditty_one    schedule 18.11.2018    source источник


Ответы (1)


Я понял. А использование встроенного webix ajax сделало его более лаконичным.

    $$("bu_select").attachEvent("onChange", function (sel,) {
      webix.ajax().get("nodes_by_bu", "bu_id=" + sel, function(text,data){
        $$("treeMenu").clearAll();
        $$("treeMenu").parse(text);
      });
     });
person ditty_one    schedule 19.11.2018