我有两个select2下拉菜单,我想根据第一个下拉列表更改第二个下拉列表中的选项。
例如,
{
data: 'country_id',
editor: 'select2',
renderer: customDropdownRenderer,
select2Options: {
data: {!! $production_units !!} ,
dropdownAutoWidth: true,
}
},
{
data: 'state_id',
editor: 'select2',
renderer: customDropdownRenderer,
select2Options: {
data: [],
dropdownAutoWidth: true,
width: 'resolve'
}
},
根据country_id,我想更改state_id的select2选项。我知道如何使用select2来完成这项工作,但我无法弄清楚如何使用handontable工作。
我在afterChange中更改了select2Options,但是怎么做?
afterChange: function (change, source) {
if(change)
{
if(change[0][1] == 'country_id')
{
$.get("/api/states?country="+change[0][3], function(data){
//What should be done here?
});
}
}
},
答案 0 :(得分:0)
您检索该国家/地区的所有州。确保状态列表与select2期望的格式相同。
然后遍历列列表并确定已修改的当前列的从属列。
获取单元格属性:
var cellProperties = instance.getCellMeta(rowIndex, dependentColumnIndex);
更新select2来源:
cellProperties['select2Options'].data = [states list];