我正在开发一个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...");
});
});
答案 0 :(得分:2)
似乎[type=checkbox]
和[type=radio]
的输入仅接受click
,change
和tap
。
但是,如果您仍想使用vclick
,则需要将此事件绑定到输入的label
。
<强> Demo 强>
<强> 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..");
});