与Knockout绑定的选项

时间:2016-01-29 15:09:08

标签: asp.net-mvc knockout.js

当然这肯定是我正在做的事情,但我有一个真正的问题,填充一个选择元素并使用Knockout设置所选值以始终如一地工作。我有一个ASP.NET视图,它有许多选择选项,我需要使用服务器中的数据设置选定的值。

有时这些绑定正确,但通常不会选择selectedValue - 这是我正在做的事情吗?

当使用ko.mapping来设置可观察的属性时,我根本无法使用它,所以一直在设置单独的observables值,但即使这样也不会一直有效。

 <select data-bind="options: possibleValues, optionsText: 'Value', optionsValue: 'Id',value: selectedValue,  optionsCaption: 'Select Value...'">                                                                                                   

function ViewModel() {
  var self = this;
  self.selectedValue = ko.observable();
  self.possibleValues = ko.observableArray();

 function GetValues() {
  $.ajax({
  url:"http:/abc.com/api/GetValues",
  dataType: "json",
  type: "GET",
  data: {},
  success: function(data) {
      $.each(data.values, function(i,option){
          self.possibleValues.push(option);
      });
  }

}

function GetInitialValue() {
  $.ajax({
  url:"http:/abc.com/api/GetValue",
  dataType: "json",
  type: "GET",
  data: {},
  success: function(data) {

     *using ko.mapping doesn't work at all?*

     self.selectedValue1(data1.Id)
     self.selectedValue2(data2.Id)
     self.selectedValue3(data3.Id)
  }
});
}

}
ko.applyBindings(new ViewModel());

0 个答案:

没有答案