我想绑定2下拉列表来敲除可观察数组。条件是第一个下拉列表必须先填充。第二个下拉列表取决于第一个下拉列表list.Hence我正在订阅第一个下拉列表来填充第二个下拉列表。 要尝试实现这一点,我写了下面的代码使用敲除可观察数组填充下拉列表
HTML是
<div class="form-group">
<label class="col-sm-2 control-label labelfont">Certification:</label>
<div class="col-sm-6">
<select class="form-control" id="certification" name="certification" data-bind="value: certification, options: certificationArray, optionsText: 'Certification', optionsValue: 'CertificationID', optionsCaption: 'Select a Certification'">
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label labelfont">Specialization:</label>
<div class="col-sm-6">
<select class="form-control" id="specialization" name="specialization" data-bind="value: specialization, options: specializationArray,optionsText:'Specialization',optionsValue:'SpecializationId', optionsCaption: 'Select a Specialization'">
</select>
</div>
</div>
视图模型是
self.specializationArray = ko.observableArray([]);
self.certificationArray = ko.observableArray([getCertifications()]);
self.certification = ko.observable("");
self.specialization = ko.observable("");
self.certification.subscribe(function() {
self.specializationArray([]);
getSpecializations();
}
});
,以获得相应的认证功能和speciaizations是
var getCertifications = function() {
$.getJSON("/Provider/GetCertifications", function (data) {
return data;
});
});
};
var getSpecializations = function() {
$.getJSON("/Provider/GetSpecializations/", { certificationID: $("#certification").val() }, function (data) {
self.specializationArray(data)
})
}
JSON响应看起来像这样 和JSON看起来像这样 可能有人请指引我的方向是正确的,我完全新的敲除和JSON.I我在我束手无策here.So,任何帮助将大大appreciated.Thanks在提前。