2012-03-23 23 views

回答

5

您的代碼有幾個錯誤。首先,使用選擇器在jQuery中選擇元素,就像在CSS中一樣。所以,你需要把這個

$("myCheckbox") 

成這樣,使用散列(#)的ID選擇

$("#myCheckbox") 

其次,jQuery的並沒有真正使用性能,但方法的一切。傳遞一個參數來獲得一個值,兩個來設置它。在這種情況下,你也是want to be using prop and not attr。所以,你需要做的:

$("#myCheckbox").prop("checked", false); 

Live example

+0

謝謝但prop(「checked」,false)和attr(「checked」,false)之間有什麼區別。由於attr更接近我原來的問題,我檢查它是一個很好的答案,但可能prop是更好的? – user310291 2012-03-23 20:11:03

+0

我在我的回答中完全解釋了這一點,甚至將你與全面的深入解釋聯繫起來。基本上,你所擁有的香草JavaScript代碼正在改變屬性,而不是屬性。 jQuery中的等價物就是我給你的。除非你完全理解它和'attr'的區別,否則總是使用'prop'。你也可以閱讀答案中的評論,答案者自己承認「道具是要走的路」。 「attr」並不接近你的問題,它只是接近你的回答。 – 2012-03-23 20:33:09

+0

哎呀抱歉,我沒有意識到有一個鏈接解釋attr道具之間的差異。謝謝。 – user310291 2012-03-23 22:27:47

3

你缺少#,表明myCheckbox是一個id,你也不能直接設置屬性值一樣即,通過該值作爲第二個參數:

$("#myCheckbox").attr("checked", false); 

另見文檔:ID Selector (「#id」)

+0

這很奇怪。我是一個倒下你的答案。您現在編輯它以修復您的錯誤,並突出顯示它的評論已被刪除。但是,它不會顯示爲編輯,所以我不能「un-downvote」。 編輯:我在你的帖子中修復了一個錯字,並且能夠取消退出。 – 2012-03-23 19:51:32

+0

在第一個5分鐘內,你可以編輯你的答案而不是顯示爲編輯 - 這很好,我應該得到初步答案的滿意答案 - 道具是無論如何要走的路。 – BrokenGlass 2012-03-23 19:52:47

1
$("#myCheckbox").attr('checked','checked'); 
and 
$("#myCheckbox").removeAttr('checked'); 
0

要使用jQuery

$("#myCheckbox").attr("checked" , true); 

選中該複選框或者取消它

$("#myCheckbox").attr("checked" , false); 

它會如果工作您的複選框有ID號噸至myCheckboxid="myCheckbox",但如果您的複選框已經班級設置爲myCheckboxclass="myCheckbox「,然後改變你的選擇,以

$('.myCheckbox') // here . used to specify class name. 

要檢查所有的複選框使用

$("input:checkbox").attr("checked" , true); // or set false to uncheck 

,或者如果你要檢查或用取消名稱屬性然後

$("input:checkbox[name='mychk']").attr("checked" , true);​ // if 'mychk' is name of the checkbox it'll be checked 
0

你想這樣做:

$("#myCheckbox").attr("checked", "checked"); 

不要錯過#aswell。

相關問題