2011-09-07 84 views
0

我需要「檢查」asp.net gridview中的所有複選框。我可以在代碼隱藏方面做到這一點,但寧願在jQuery中在客戶端執行此操作。複選框存儲在其中的列被稱爲「displayButton」,因爲一旦複選框被選中,它將顯示另一個操作按鈕。如何使用jQuery選擇所有複選框

不知道如何從這裏開始。

+0

您呈現的HTML將幫助..(如果它是可讀......(asp.net)) – jondavidjohn

回答

-1
$('#girdid input [type="checkbox"]').attr('checked', true); 

這是解決方案。我希望它能幫助

+0

在jQuery的版本1.5.x和更早的版本'.attr()'是1.6版的正確方法,'.prop()'函數被添加來設置/獲取元素的屬性值。文檔:http://api.jquery.com/prop/ – Jasper

0
$("#id input:checkbox").prop("checked", true); 

$(".class input:checkbox").prop("checked", true); 
1

$("input:checkbox").prop("checked",true)

$("input:checkbox").attr("checked","checked") jQuery的1.5.x版或更早版本。這就是說:你說你寧願不要在ASP.Net中這樣做,但如果可能的話,你的用戶將會關閉JavaScript,那麼你就必須在服務器端完成它。

2

你會開始選擇所有要檢查的複選框選擇,然後使用prop()功能改變自己的「檢查」屬性設置爲true:

$('input:checkbox').not(':checked').prop('checked', true); 

注:檢查mblase75的jQuery的響應版本問題。

--UPDATE--

我跑了jsperf,如果複選框被選中已經是相當的不僅僅是使用.prop()函數來設置所有checkboxe較慢(大約慢50%)已選中不檢查屬性爲true。

+0

爲什麼還要用'.not(':checked')'呢? – Blazemonger

1

的jQuery低於1.6

$('input:checkbox').attr('checked', "checked"); 

和1.6+

$('input:checkbox').prop('checked', true);