Как изменить два многовидовых окна одновременно?

Хорошо, позвольте мне сначала начать с объяснения того, что у меня есть.

У меня есть сегментированный элемент управления, который действует как мой элемент управления Tab-bar. Это изменяет содержимое страницы в зависимости от того, какой сегмент (вкладка) выбран. Содержание страницы разделено на левую и правую колонку. Каждый столбец имеет свой собственный Multiview.

Теперь проблема заключается в том, что я могу изменить только один из мультивизор при изменении сегмента (вкладки).

 _______________
|  ___ ___ ___  |
| (_1_|_2_|_3_) |  /* segments or tabs */
|   ____ _____  |
|  |left|right| |  /* two columns that must change */
|  |~~~ |~~~  | |
|  |~~~ |~~~  | |
|  |~~~ |     | |
|  |____|_____| |
|_______________|

Это часть моего кода, и я использую сенсорный dhtmlx

{
container:"content",
type:"clean",
css:"page",
rows:[
    {
        view:"toolbar",
        elements:[
            {view:"segmented", width:320, inputWidth: 280, multiview: true, selected:"cos_301", align:"center", options: [   
                { label: 'COS 301', value: "cos_301"},
                { label: 'COS 333', value: "cos_333"},
                { label: 'COS 364', value: "cos_364"}
            ]}
        ]
    },
    {cols:[
        {view:"label", label:"Announcements"},
        {view:"label", label:"Pracs"}
    ]},
    {cols:[
        {view:"multiview", width:200, height: 290, 
            cells:[    
                { template:"some info", scrol: true, id:"cos_301" },
                { template:"some info", scrol: true, id:"cos_333" },
                { template:"some info", scroll: true, id:"cos_364" }
            ]
        },
        {view:"multiview", width:100, height: 290, 
            cells:[    
                { template:"some info", scrol: true, id:"cos_301p" },
                    { template:"some info", scrol: true, id:"cos_333p" },
                    { template:"some info", scrol: true, id:"cos_364p" }
                ]}
    ]}
    ]
}

/отображается правильно, просто не хочет меняться/

1 ответ

Вы можете попытаться установить обработчик onBeforeTabClick, чтобы отображать более одного представления при щелчке на вкладке (и в этом случае вы можете удалить "multiview:  true" из конфигурации):

dhx.ui({
...
{view:"segmented", id: "tabs", ...}
...
});

$$("tabs").attachEvent("onBeforeTabClick", function(button, id) {
   // show the view in the first column
   $$(id).show();
   // and the second column
   $$(id+"p").show();
   return true;
});
Другие вопросы по тегам