gpt4 book ai didi

javascript - 两选计算 knockout

转载 作者:行者123 更新时间:2023-12-03 08:16:57 25 4
gpt4 key购买 nike

我尝试使用 Knockout 绑定(bind)两个计算选择: - 第一个选择(DropDownLinee)在页面加载时被填充 - 当用户在第一个选择上选择一个项目时,第二个选择(DropDownCorse)被填充

这是示例:

<select id="DropDownLinee" data-bind="options: ArrayLinee, optionsText: 'NomeLinea', optionsValue: 'NomeLinea', value: selectedLinea " data-toggle="dropdown"></select>

<select id="DropDownCorse" data-bind="options: ArrayCorse, optionsText: 'CodiceCorsa', optionsValue: 'CodiceCorsa', value: selectedCorsa " data-toggle="dropdown"></select>

function LineeViewModel() {
var self = this;

self.selectedLinea = ko.observable();
self.selectedCorsa = ko.observable();

self.ArrayLinee = ko.observableArray([]);
self.ArrayCorse = ko.observableArray([]);

$.getJSON('/Home/GetLines', function (data) {
self.ArrayLinee(data);
});

self.ArrayCorse = ko.computed(function () {
$.getJSON('/Home/GetRides',
{
LineaSelezionata: self.selectedLinea(),
DirezioneSelezionata: $('input[name=radio4]:checked', '.areaselezione').val()
},
function (data) {
debugger;
self.ArrayCorse(data);

});
});
}


lineeVM = new LineeViewModel();
ko.applyBindings(lineeVM);

当我检查加载“DropDownCorse”时出现此错误:未捕获错误:除非指定“写入”选项,否则无法将值写入 ko.compulated。如果您想读取当前值,请不要传递任何参数。

谁能帮我解决这个问题???

提前感谢多纳托的问候

最佳答案

您想使用subscribe ,而不是计算

  self.selectedLinea.subscribe(function (newSelection) {
$.getJSON('/Home/GetRides',
{
LineaSelezionata: newSelection,
DirezioneSelezionata: $('input[name=radio4]:checked', '.areaselezione').val()
},
function (data) {
debugger;
self.ArrayCorse(data);

});
});

关于javascript - 两选计算 knockout ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33891505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com