2014-05-01 47 views
-1

創建一堆行,每個都有用於批量刪除的複選框,但我的jquery選擇器語句是錯誤的。我想唯一的類的複選框「JS-刪除,勾選」鏈接選擇器獲取某些複選框

下面是代碼,儘管砍下爲了簡潔起見,因爲我敢肯定這個問題是在我的選擇語法

//The View 
@foreach (NewClubEmail e in Model.DraftEmails) 
{ 

    <input type="checkbox" value="@e.Id" name="delete" class="js-delete-checkbox"/><br /> 

    } 


//The AJAX code that gets the checkboxes 
<script type="text/javascript"> 

[...] 
var checkedValues = $('.js-delete-checkbox input:checkbox:checked').map(function() { 

          return this.value; 

        }).get(); 
[...] 
</script> 
+0

請向我們展示瀏覽器中來自View/Source的實際生成的HTML,以便我們可以更準確地理解目標是什麼。 – jfriend00

回答

0

需要翻轉順序:

$('input:checkbox:checked.js-delete-checkbox') 
0

很難說沒有看到實際的HTML,你需要來區分它是什麼,但像你想眼前這個看起來對我說:

$('.js-delete-checkbox:checked') 

注意:當所有屬性位於同一對象上時,不需要選擇器中有任何空格,因爲空格會強制選擇器引擎查找父/子,而不是查找同一對象上的所有屬性。

我沒有看到任何理由,您需要作爲選擇器的一部分,因爲大概.js-delete-checkbox已經消除了不是複選框的東西。

+0

有一個「全選」複選框,這就是爲什麼我需要更具選擇性,我猜。 – Slinky

+0

@Slinky - 向我們展示您的實際HTML,我們可以提供更好的幫助。你基本上要求我們猜猜會發生什麼。該選擇器不會改變選擇全部複選框是否包含在選擇中。 – jfriend00