2013-05-10 167 views
2

我正嘗試使用JQM更改複選框狀態(選中/取消選中)。Jquery Mobile複選框問題

在HTML部分我有一個複選框,一個按鈕清除和一個按鈕設置。

在Java腳本的一部分我的代碼清除和設置「勾選」使用值按鈕

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/

您將通過敲擊通知按鈕設置或清除它不起作用。

I'm使用谷歌的Chrome版本26.0.1410.64米

我已經注意到了,在我的情況下,從輸入刪除標記它工作正常,但JQM風格不被考慮。

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

入住的例子:http://jsfiddle.net/QLzBX/1/

你有任何想法如何得到它的工作使用JQM?

預先感謝您

阿爾瓦羅

+0

通過使用以下我能夠ge它工作:$('#checkboxID')。attr(「checked」,false).checkboxradio(「refresh」); – Alvaro 2013-05-10 17:10:44

回答

5

工作例如: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

+1

非常感謝! :) – Alvaro 2013-05-10 17:13:18