<div data-role="header" class="page-header"><h2>Header</h2></div>
<div data-role="content">
<form>
<fieldset data-role="controlgroup">
<legend>Legend:</legend>
<input name="checkbox-1a" id="checkbox-1a" type="checkbox"/ >
<label for="checkbox-1a">Label</label>
我使用这个脚本:
$( ".class").on( 'tap', tapHandler );
function tapHandler( event ) {
alert(123);
}
当我把它放到标题$(".page-header").on('tap'
时效果很好,但当$("input").on('tap')
没有任何反应时
为什么呢?
on input
onclick不适用于移动设备
答案 0 :(得分:3)
你必须明白,你没有点击复选框输入,你正在点击该复选框的jQuery Mobile表示。放入原文是隐藏的。
这将有效:
$(document).on('tap', '.ui-checkbox', function(){
// Do something
});
答案 1 :(得分:0)
我认为问题是jQuery Mobile事件无法在标签中定义,所以尝试通过他的id来提交
使用$("#checkbox-1a").on
代替