如何在knockout JS中按特定id强制选择对象选项

时间:2018-02-27 17:58:52

标签: knockout.js

我有:

 <div class="form-group">
                                <label>Type:</label> <select required="required"
                                    class="form-control m-b"
                                    data-bind="options: myListType, value: typeData, optionsText: 'name', optionsCaption: 'Select...'"></select>
                            </div>

 $scope.myListType= [
         {'id': '1', 'name': 'Block'},
         {'id': '2', 'name': 'NFA'},
         {'id': '3', 'name': 'FCA'},
         {'id': '4', 'name': 'ASIC'}
     ];


      $scope.typeData= {
        id : ko.observable(''),
        name: ko.observable('')              
    };

现在我想在id 3上强制选择,即按特定ID自动选择。

1 个答案:

答案 0 :(得分:0)

您已将typeData错误设置为绑定到valuetypeData本身需要是一个可观察的。除非您打算单独更新它们,否则它不需要具有可观察的成员。

$scope.typeData = ko.observable();

要设置选择,只需将绑定项设置为所需的值:

$scope.typeData($scope.myListType.find(item => item.id === '3'));