淘汰赛 - 使用新列表更新下拉列表
Knockout - Update dropdownlist with new list
这是我的 HTML
<select id="masterLibrary" data-bind="options: libraries, value: library"></select>
在class中:
libraries: string[];
library: KnockoutObservable<string>;
this.libraries= data.libraries.map(x => x.name);
this.library = getLibraryName(data.libraryId);
更改城市下拉列表后,我想用所选城市更新库。
this.city.subscribe(name => {
DataService.instance.get('city/' + this.name(), (data): any => {
this.libraries = data.libraries.map(x => x.name);
});
});
我正在获取数据,但是 UI 下拉菜单没有更新数据
可能是因为库不是 observableArray
,它只是一个普通的字符串数组,因此任何更新都不会反映在页面上。如果是这种情况,那么您还需要在城市发生变化时更改加载库的方式 observeableArray
。
这是我的 HTML
<select id="masterLibrary" data-bind="options: libraries, value: library"></select>
在class中:
libraries: string[];
library: KnockoutObservable<string>;
this.libraries= data.libraries.map(x => x.name);
this.library = getLibraryName(data.libraryId);
更改城市下拉列表后,我想用所选城市更新库。
this.city.subscribe(name => {
DataService.instance.get('city/' + this.name(), (data): any => {
this.libraries = data.libraries.map(x => x.name);
});
});
我正在获取数据,但是 UI 下拉菜单没有更新数据
可能是因为库不是 observableArray
,它只是一个普通的字符串数组,因此任何更新都不会反映在页面上。如果是这种情况,那么您还需要在城市发生变化时更改加载库的方式 observeableArray
。