无法激活javascript事件OnClick的复选框

时间:2016-06-27 21:05:25

标签: javascript jquery checkbox onclicklistener

所以我有一个复选框控件,我无法触发OnClick事件。我尝试了多种不同的方法:绑定事件onload并将事件作为参数添加到<input type="checkbox">标记中。

这是我最近的代码迭代。我试图点击Alert只是为了确认它发生了变化。

<section class="border-bottom">
    <div id="approx" class="content">
        <h3>This is my approximate location</h3>
        <div class="form-control-group">
            <div class="form-control form-control-toggle" data-on-label="yes" data-off-label="no">
                <input type="checkbox"  />
            </div>
        </div>
    </div>
</section>

JavaScript的:

$('input[type="checkbox"]').bind('click', function() {
    alert("OK");
})

我也不介意能够通过以下输入运行它:

<input type="checkbox" onclick="runMyFunction(); return false;" />

3 个答案:

答案 0 :(得分:0)

您应该使用以下方法之一:

  • .click(function() { ... })
  • .change(function() { ... })
  • .on('click', function() { ... })

HTML:

<div section class="border-bottom">
    <div id="approx" class="content">
        <h3>This is my approximate location</h3>
        <div class="form-control-group">
            <div class="form-control form-control-toggle" data-on-label="yes" data-off-label="no">
                <input type="checkbox" id="checkbox" />
            </div>
        </div>
     </div>
</section>

JavaScript的:

$('#checkbox').change(function() {
    alert("OK");
});

答案 1 :(得分:0)

部分插件需要:

$("#checkbox").on('change', function() {
    // content
});

或查找插件手册(有时您需要使用:pluginName.change交换更改)

答案 2 :(得分:0)

首先在$(document).ready函数中使用你的jquery函数,以确保dom准备就绪:

       $(document).ready(function () {
            $('input[type="checkbox"]').bind('click', function () {
                alert("OK");
            })
        });

https://jsfiddle.net/4fmL1zfr/8/