点击事件在knockoutjs上自动触发

lev*_*vye 5 javascript knockout.js

我正在尝试使用learn.knockoutjs.com 上的邮件客户端教程.我想在邮件详细信息块中添加"后退按钮".但该按钮是自动触发的.

我的代码

<div class="viewMail" data-bind="with: chosenMailData">
    <button data-bind="click: alert('derp')">derp</button>
    <div class="mailInfo">
        <h1 data-bind="text: subject"></h1>
        <p><label>From</label>: <span data-bind="text: from"></span></p>
        <p><label>To</label>: <span data-bind="text: to"></span></p>
        <p><label>Date</label>: <span data-bind="text: date"></span></p>
    </div>
    <p class="message" data-bind="html: messageContent" />
</div>
Run Code Online (Sandbox Code Playgroud)

当我设置selectedMailData viewMail div显示.但同时浏览器警报"derp".当我点击按钮时,我希望当时的浏览器提醒.怎么了?

And*_*ers 9

当with绑定呈现内容时,将执行警报代码.

将其包装在函数中或将其移动到视图模型中的函数

<button data-bind="click: function() { alert('derp'); }">derp</button>
Run Code Online (Sandbox Code Playgroud)