2013-04-25 61 views
1

我正在使用圖像作爲複選框。當通過jQuery手動更改複選框的屬性時,複選框的背景圖像似乎沒有改變。複選框背景圖像不會更改第二次

在這種情況下,當您第二次點擊按鈕時,選中的圖像不會出現。

的jsfiddle:http://jsfiddle.net/aLAgV/1/

代碼

var $elm = $('#checkbox-1'); 
$('#butn').click(function(e) { 
    e.preventDefault(); 

    if($elm.is(':checked')) 
     $elm.removeAttr('checked'); 
    else 
     $elm.attr('checked','checked'); 
}); 
+1

removeattr被移除屬性....也應該使用道具 – Ohgodwhy 2013-04-25 04:29:04

回答

2

看看這會有所幫助。 http://jsfiddle.net/DVuMB/

Prop()

$(document).ready(function() { 

    var $elm = $('#checkbox-1'); 
    $('#butn').click(function(e) { 
    e.preventDefault(); 

    $elm.prop('checked',!$elm.is(':checked')); 

}); 
+0

謝謝!將接受你的答案.. – user1184100 2013-04-25 04:31:21

+0

很高興它幫助你... – PSL 2013-04-25 04:31:51

1

使用檢查真/假應該工作

$elm.attr('checked',true); 
$elm.attr('checked',false);