Knockout.js 在敲除中使用虚拟绑定后如何使用下拉列表?

Knockout.js 在敲除中使用虚拟绑定后如何使用下拉列表?,knockout.js,Knockout.js,在这里,我使用虚拟绑定来隐藏dropdownlist。对于一个条件,我将显示dropdownlist。但是我无法选择dropdownlist <!-- ko if: chartType --> <select id="chartType"> <option>column</option>

在这里,我使用虚拟绑定来隐藏dropdownlist。对于一个条件,我将显示dropdownlist。但是我无法选择dropdownlist

                      <!-- ko if: chartType -->
                        <select id="chartType">
                            <option>column</option>
                            <option>bar</option>
                        </select>
                      <!-- /ko -->

柱
酒吧
还有我的js:

$(“#li#tab2”).live(“单击”,函数(){
viewModel.chartType(true);
});


如何解决此问题请帮助我?

如果要获取选择框的值,需要向选择元素添加绑定

HTML

<button data-bind="click: onShowChartType">Show Chart Type</button>
<!-- ko if: chartType -->
    <select id="chartType"  data-bind="
         options: chartTypes, 
         optionsCaption:'Please select...', 
         value: selectedChartType">
    </select>
<!-- /ko -->

<br />
<span>Selected chart type:</span>
<span data-bind="text: selectedChartType"></span>

液滴列表是否不显示?您的select元素中也没有任何绑定,因此当select出现并且您选择了一个选项时,knockout将不起任何作用。DropDownNList出现,但我无法选择列表,先生。如果您使用“if Binding”,则无法工作,因此最好使用可见绑定。select是否已禁用。单击“选择”列表时,是否显示任何项目。@akhlesh,没有区别。当chartType变为true时,Knockout将创建节点
var viewModel = { 
    chartType: ko.observable(false),
    chartTypes: ko.observableArray(["column", "bar"]),
    selectedChartType: ko.observable(),
    onShowChartType: function() {
        this.chartType(true);
    }
};

ko.applyBindings(viewModel);