Knockout.js单击绑定不调用viewmodel函数

时间:2019-06-24 13:30:47

标签: javascript knockout.js

我希望在我的视图模型上声明的函数在单击按钮时触发。但是,单击按钮时不会调用这些功能。

我尝试重命名方法,用参数调用它们,但没有任何东西触发它们。我知道自从showSmsPanel观察到的效果以来,我就在页面上加载了kickout.js。

MyJavascript.js

function AdminTilmeldingerViewModel() {
    var self = this;
    self.showSmsPanel = ko.observable(false);  // hidden initially

    self.cancelSend = function () {
        console.log('cancelSend');
        this.showSmsPanel(false);
    }

    self.sendSms = function () {
        console.log('sendSms');

    };

}

var vm = new AdminTilmeldingerViewModel();
ko.applyBindings(vm);

MyHtml.aspx

<div id="smsPanel" data-bind = "visible: showSmsPanel" class="row">

    <input type=button class="btn btn-primary" data-bind="click: sendSms" id="btnSendSms" value="Send sms">

    <input type=button class="btn btn-default" data-bind="click: cancelSend" value="Annuller">

</div>

我希望在单击按钮时会调用该函数,但是我看不到输出记录到控制台。

0 个答案:

没有答案