Bootstrap单选按钮组敲除绑定不起作用

时间:2015-05-19 04:54:37

标签: javascript jquery twitter-bootstrap knockout.js radio-button

我跟着这个: http://volaresystems.com/blog/post/2013/12/09/Using-Bootstrap-3-radio-button-groups-with-Knockout-3-data-bindings (jQuery 2.0.3,Bootstrap 3.0.3,Knockout 3.0.0)

据我所知,唯一的区别是jQuery,Knockout和Bootstrap版本号,但主要版本号匹配。 http://jsfiddle.net/csabatoth/rLtL16xk/12/ (jQuery 2.1.3,Bootstrap 3.3.4,Knockout 3.3.0)

<p>
    Currently selected: <span data-bind="text: selectedOption"></span>
</p>

<div class="btn-group-vertical" data-toggle="buttons">
    <label class="btn btn-lg btn-primary" data-bind="css: { 'active': selectedOption() === 'Purchase Target Cat' }">
        <input type="radio" name="options" id="option1" data-bind="checked: selectedOption, checkedValue: 'Purchase Target Cat'">Purchase Target Cat
    </label>
    <label class="btn btn-lg btn-primary" data-bind="css: { 'active': selectedOption() === 'Purchase Existing Cat' }">
        <input type="radio" name="options" id="option2" data-bind="checked: selectedOption, checkedValue: 'Purchase Existing Cat'">Purchase Existing Cat
     </label>
     <label class="btn btn-lg btn-primary" data-bind="css: { 'active': selectedOption() === 'Existing Dog Purchases Target Cat' }">
        <input type="radio" name="options" id="option3" data-bind="checked: selectedOption, checkedValue: 'Existing Company Purchases Target Company'">Existing Dog Purchases Target Cat
     </label>
</div>

var viewModel = function () {
    var self = this;
    self.selectedOption = ko.observable("Target Cat");
}

$(document).ready(function () {
    var vm = new viewModel();
    ko.applyBindings(vm);
});

任何人都可以指出为什么这不起作用?绑定只是一种方式。它获得了初始值,但没有进一步的用处。

1 个答案:

答案 0 :(得分:10)

试     <div class="btn-group-vertical" data-toggle="buttons">删除data-toggle="buttons"

添加css:

label.btn > input[type='radio']
{
    display: none;
}

js:删除$(document).ready(function () {

DEMO