我为 jQuery mobile 1.0.1 中的复选框列表设置了以下代码,这在 android 设备上产生了奇怪的行为。
<fieldset data-role="controlgroup">
<div id="container">
<div id="List1">
<input type="checkbox" name="1" id="Team-1-Player-1" data-theme="a"/>
<label for="1" data-theme="a">
<span class="ui-grid-b grid">
<span class="ui-block-a col1">1</span>
<span class="ui-block-b col2">Name <span class="pos">Position</span></span>
<span class="ui-block-c col3">Avg</span>
</span>
</label>
<input type="checkbox" name="2" id="Team-1-Player-2" data-theme="a"/>
<label for="2" data-theme="a">
<span class="ui-grid-b grid">
<span class="ui-block-a col1">2</span>
<span class="ui-block-b col2">Name <span class="pos">Position</span></span>
<span class="ui-block-c col3">Avg</span>
</span>
</label>
</div>
</div>
</fieldset>
根据页面的不同,可能有多个“列表”div,但行为是相同的。如果用户按下标签标签内的任何位置,一切正常,但如果他们按下 jquery mobile 生成的复选框图标,它将显示为选中,然后立即取消选中。这只发生在安卓设备上。
编辑:
我最终通过删除复选框图标 jquery mobile 通过 css 添加并将我自己的图标放入复选框标签的背景图像中解决了这个问题。我在复选框的更改事件中处理了选中和未选中之间的切换。感谢所有的建议。