Javascript 在Knockout.js中重新填充选项后,下拉列表中的值绑定未更新
在我的网站上,我有两个下拉列表:workuser和contract。更改工作用户后,将更新合同的选项: Javascript:Javascript 在Knockout.js中重新填充选项后,下拉列表中的值绑定未更新,javascript,knockout.js,Javascript,Knockout.js,在我的网站上,我有两个下拉列表:workuser和contract。更改工作用户后,将更新合同的选项: Javascript: function PageViewModel() { var self = this; self.workuser_id = ko.observable(); self.contract_id = ko.observable(); self.selectedWorkuserActiveContracts = ko.observableAr
function PageViewModel() {
var self = this;
self.workuser_id = ko.observable();
self.contract_id = ko.observable();
self.selectedWorkuserActiveContracts = ko.observableArray([]);
self.workuser_id.subscribe( () => {
$.get('/IncomeReportsApi/Contracts'
, { workuser_id: self.workuser_id() }
, (responseData) => {
self.activeContractsWithSelectedUser(responseData);
});
});
self.workusers = ko.observableArray([
{ workuser_name: 'loading...', workuser_id: -1, disable: ko.observable(true)},
]);
$.get('/IncomeReportsApi/Workusers', {}, (responseData) => {
responseData.unshift({ workuser_name: 'select workuser', workuser_id: -1, disable: ko.observable(true) })
self.workusers(responseData);
});
Html:
我们遇到了一个奇怪的错误。workuser下拉列表在更新值时工作正常。selectedWorkuserActiveContracts数组正确填充了正在填充的select中的选项
但是,合同id保持未定义状态,并且在更改下拉列表中的选定选项后不会更新
我浏览了有关StackOverflow的相关问题,但似乎没有一个是相同的问题
请帮忙。经过一些调试,我能够自己解决这个问题 问题是我把可观察的名字加上了撇号。移除它们解决了问题 我换了:
,value: 'contract_id'
到
,value: 'contract_id'
,value: contract_id