Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 淘汰事件处理_Javascript_Knockout.js - Fatal编程技术网

Javascript 淘汰事件处理

Javascript 淘汰事件处理,javascript,knockout.js,Javascript,Knockout.js,我有一个代码(您可以在上播放,播放前在输出窗口中单击运行): HTML: 问题是复选框单击事件处理无法正常工作。当我单击[div class=“btn”…][/div]区域内的空格时,复选框行为正常,但当我单击复选框本身时,它未被选中。我怎样才能使它在任何情况下都可检查 谢谢。您的用例是在单击文本时选中复选框吗 我在我的定制绑定集合中为此制作了一个绑定 编辑:您还可以通过使用标准的hack将复选框包装到标签元素中来修复此问题,如 <div class="btn" style="m

我有一个代码(您可以在上播放,播放前在输出窗口中单击运行):

HTML:

问题是复选框单击事件处理无法正常工作。当我单击[div class=“btn”…][/div]区域内的空格时,复选框行为正常,但当我单击复选框本身时,它未被选中。我怎样才能使它在任何情况下都可检查


谢谢。

您的用例是在单击文本时选中复选框吗

我在我的定制绑定集合中为此制作了一个绑定


编辑:您还可以通过使用标准的hack将复选框包装到标签元素中来修复此问题,如

<div class="btn" style="margin-left: 15px;" data-bind="click: includeMyNumber">
   <input data-bind="checked: isIncludeMyNumber" data-val="true" id="IncludeMe" name="IncludeMe" style="margin: 0" type="checkbox" value="true" />&nbsp;
   Include my number (+<span>11111111111</span>) 
</div>
 // This is a simple *viewmodel* - JavaScript that defines the data and behavior of your UI
function AppViewModel() {

    this.isIncludeMyNumber = ko.observable(false);

    this.includeMyNumber = function(){
       this.isIncludeMyNumber(!this.isIncludeMyNumber());
    }
}

// Activates knockout.js
ko.applyBindings(new AppViewModel());
<input data-bind="checked: checked, label: { caption: 'Label with reference to input' }" type="checkbox" />