3

我正在开发一个 JQM 应用程序,并且我试图让一个复选框在按下时显示额外的选项。我很习惯使用 $().on('vclick') 来捕获我的事件,但它似乎不适用于复选框。知道为什么吗?

一个小提琴在这里:http: //jsfiddle.net/T3qmG/43/

HTML

<body>
    <div data-role="page">
        <div data-role="header">
            <h2>Checkbox Test</h2>
        </div>
        <div data-role="content">
                <input type="checkbox" id="checkbox-choice-1" />
                <label for="checkbox-choice-1">Click me</label>
        </div>
        <input id="vclick-test" type="button" value="A normal button"/>
    </div>
</body>

Javascript

$(document).ready(function(){
    $("#checkbox-choice-1").on('vclick', function(){
        alert("VClick event triggerd.  Yet you'll never see this..");
    });
    $("#checkbox-choice-1").click(function(){
        alert("Click event triggerd.");
    });
    $("#checkbox-choice-1").change(function(){
        alert("Change event triggerd.");
    });
    $("#vclick-test").on('vclick', function(){
        alert("This proves that vclicks do work...");
    });
});
4

1 回答 1

2

似乎输入[type=checkbox][type=radio]接受clickchange并且tap只有。

但是,如果您仍想使用,vclick则需要将此事件绑定到label输入的 。

演示

HTML

<input type="checkbox" id="checkbox-choice-1" />
<label for="checkbox-choice-1">Click me</label>

JS

$("[for=checkbox-choice-1]").on('vclick', function () {
  alert("VClick event triggerd. Yet you'll see THIS..");
});
于 2013-06-26T18:06:47.257 回答