根据组合框中选定的默认项目加载排列,并在更改选定项目时重新加载(淘汰)

Load Spread based on default item selected in the combobox and reload on changing selected item (knockout)

本文关键字:项目 加载 淘汰 新加载 排列 组合 默认      更新时间:2024-01-31

我想根据组合框中选择的默认项目加载页面,并在更改所选项目时重新加载(淘汰)。

目前我正在做的是点击一个按钮加载表单。这是我的密码。请推荐我,因为我对淘汰赛还很陌生。

html:

<select data-bind="options : employeeList, optionsText : 'name', value : selectedEmployeeList"></select>
</span>
<button class="toolbar-button" data-bind="click : load, disable :loading">Load employee</button>

js:

var filterVM = function () {
    this.employeeList = ko.observableArray();
    this.selectedEmployeeList = ko.observable();
};
dataService.getEmployeeLists(this.viewData.EmployeeId).then(loadEmployeeLists).then(enableControls);
filterVM.prototype.load = function () {
    var selectedEmployeeList = this.selectedEmployeeList();
    var self = this;
    if (selectedEmployeeList) {
        disableControls();
        dataService.getEmployeeByEmployeeList(this.viewData.employeeId, selectedEmployeeList.id)
            .done(loadPEmployeeSpread);
    }
};

您可以在更改所选值selectedEmployeeList时调用加载函数在构造函数中添加以下代码

this.selectedEmployeeList .subscribe(function(newValue) {
    //This function is going to get called on every change of the selectedEmployeeList 
    //Add here your code to load the page
}, this);

subscribe:-是knocket提供的一种功能,它可以跟踪订阅变量中的每一次更改,并在每次更改时调用函数。