Jquery Mobile Checkbox问题

时间:2013-05-10 17:07:35

标签: jquery jquery-mobile jquery-mobile-checkbox

我正在尝试使用JQM更改复选框状态(选中/取消选中)。

在HTML部分,我有一个复选框,一个Clear按钮和一个按钮Set。

在Java Script部分中,我有清除代码并使用按钮设置复选框“已选中”

 HTML code piece:
 ----------------
 <label><input type="checkbox" name="checkboxName" id="checkboxID">checkbox</label>
 <a href="#" id="clear" data-role="button" data-inline="true" data-theme="b">Clear</a>
 <a href="#" id="set" data-role="button" data-inline="true" data-theme="b">Set</a>

 JS code piece:
 --------------
 $("#clear").click(function() {
    $('#checkboxID').filter(':checkbox').prop('checked',false);
 });

 $("#set").click(function() {
    $('#checkboxID').filter(':checkbox').prop('checked',true);
 });

http://jsfiddle.net/VXwzp/14/

中查看此示例

按“设置”或“清除”按钮,您会注意到它无效。

我使用的是Google Chrome版本26.0.1410.64 m

我注意到,如果我从输入中删除标签,它可以正常工作,但不会考虑JQM样式。

 <input type="checkbox" name="checkboxName" id="checkboxID">

查看以下示例:http://jsfiddle.net/QLzBX/1/

您是否知道如何使用JQM使其工作?

提前谢谢

阿尔瓦罗

1 个答案:

答案 0 :(得分:6)

工作示例:http://jsfiddle.net/Gajotres/VXwzp/15/

$("#clear").click(function() {
    $('#checkboxID').filter(':checkbox').prop('checked',false).checkboxradio("refresh");
});

$("#set").click(function() {
    $('#checkboxID').filter(':checkbox').prop('checked',true).checkboxradio("refresh");
});

使用jQuery Mobile时,您必须了解如何更改其小部件标记,以便查看我的其他答案: jQuery Mobile: Markup Enhancement of dynamically added content