Обратный вызов Bokeh JS для выбора строк таблицы на основе выбора из другой таблицы - PullRequest
0 голосов
/ 14 сентября 2018

У меня есть две таблицы bokeh, и я хотел бы щелкнуть по записи таблицы в первой таблице и выбрать строки во второй таблице на основе соответствующих значений в поле. создал скрипт обратного вызова js для:

Создать пустой список для хранения индексов из таблицы 2, которые соответствуют записям в таблице 1 Собранные по выбранным показателям таблицы 1

Цикл по индексам в таблице 1 и сбор значения для сравнения с таблицей 2 переверните таблицу 2 и добавьте индексы, если идентификатор таблицы совпадает.

Ничего не происходит, когда я запускаю скрипт и выбираю на столе.

code = """
    var select_indices = []
    var cdata = cb_obj.data;
    var pdata = psrc.data;
    var indices = cb_obj.selected.indices;

    for (var i=0; i < indicies.length; i ++){
        var hh_id = cdata['hh_id'][i]

        for (var j = 0; j < pdata['hh_id'].length; j++){

            if(pdata['hh_id'][j] == hh_id){
                select_indices.push(j)
            }
        }

    }

    psrc.selected.indices = select_indices;
    psrc.trigger('change');

"""


hh_src.callback = CustomJS(args=dict(psrc=per_src), code=code)

Изображение страницы

ошибка из окна консоли

VM544 bokeh-0.13.0.min.js:31 Uncaught Error: not connected so cannot send 
[object Object]
at t.send (VM78 bokeh-0.13.0.min.js:31)
at t._document_changed (VM78 bokeh-0.13.0.min.js:31)
at _document_listener (VM78 bokeh-0.13.0.min.js:31)
at P._trigger_on_change (VM78 bokeh-0.13.0.min.js:31)
at P._notify_change (VM78 bokeh-0.13.0.min.js:31)
at t.u._tell_document_about_change (VM78 bokeh-0.13.0.min.js:31)
at t.u.setv (VM78 bokeh-0.13.0.min.js:31)
at t.set [as indices] (VM78 bokeh-0.13.0.min.js:31)
at SlickGrid.<anonymous> (VM80 bokeh-tables-0.13.0.min.js:31)
at Event.notify (VM80 bokeh-tables-0.13.0.min.js:68)
t.send  @   VM544 bokeh-0.13.0.min.js:31
t._document_changed @   VM544 bokeh-0.13.0.min.js:31
_document_listener  @   VM544 bokeh-0.13.0.min.js:31
P._trigger_on_change    @   VM544 bokeh-0.13.0.min.js:31
P._notify_change    @   VM544 bokeh-0.13.0.min.js:31
u._tell_document_about_change   @   VM544 bokeh-0.13.0.min.js:31
u.setv  @   VM544 bokeh-0.13.0.min.js:31
set @   VM544 bokeh-0.13.0.min.js:31
(anonymous) @   VM546 bokeh-tables-0.13.0.min.js:31
Event.notify    @   VM546 bokeh-tables-0.13.0.min.js:68
trigger @   VM546 bokeh-tables-0.13.0.min.js:86
handleSelectedRangesChanged @   VM546 bokeh-tables-0.13.0.min.js:86
Event.notify    @   VM546 bokeh-tables-0.13.0.min.js:68
f   @   VM546 bokeh-tables-0.13.0.min.js:68
h   @   VM546 bokeh-tables-0.13.0.min.js:68
(anonymous) @   VM546 bokeh-tables-0.13.0.min.js:68
 Event.notify   @   VM546 bokeh-tables-0.13.0.min.js:68
trigger @   VM546 bokeh-tables-0.13.0.min.js:86
setActiveCellInternal   @   VM546 bokeh-tables-0.13.0.min.js:86
handleClick @   VM546 bokeh-tables-0.13.0.min.js:86
dispatch    @   jquery.min.js:2
h.dispatch  @   VM85 bokeh-tables-0.13.0.min.js:62
y.handle    @   jquery.min.js:2
...