使用淘汰赛预选下拉列表不起作用

时间:2017-07-11 11:47:06

标签: javascript knockout.js

在页面加载时,我将drpDownValue视为null。

我能够在计算函数中将drpDownValue更新为1。但是在默认情况下未选择UI下拉列表。

我需要在下拉列表中默认选择“启用”选项。请帮我解决这个问题

 <select data-bind="options: Options, optionsCaption: ' ', optionsText: 'Value', optionsValue: 'Key', value: drpDownValue}"></select>

var EditModel = function () {
  var drpDownValue = ko.observable(0);
  var Options = ko.observableArray([{ Key: 1, Value: "Enable" }]);
  var Test= ko.computed(function() {
      drpDownValue(1);
  });

return {
  drpDownValue: drpDownValue,
  Options: Options,
  Test: Test
};
}

1 个答案:

答案 0 :(得分:1)

您正在为一个项目提供一个列表,并告诉它它的值是1。然后,您可以通过drpDownValue将选择的值设置为默认值0。由于这不作为项目列表中的值存在,因此不会选择任何内容。

如果您想使用1作为默认值,只需将您的observable更新为默认值而不是0

var drpDownValue = ko.observable(1);

请注意,这与您 设置optionsCaptionwhich is meant for when you don't want to select one by default的事实并不相符,而是希望显示类似的内容&#34;请选择&#34;代替。