2011-02-04 28 views
10

Đây có thể là câu hỏi dễ nhất trong ngày.Chọn tất cả các hộp kiểm đã chọn với id tương tự bằng cách sử dụng Jquery?

tôi có một nhóm các checkbox với tương tự của id (tất cả bắt đầu với someid_ như someid_0, someid_1 ..)

tôi muốn có được tất cả checked hộp kiểm.

Tôi đã thử $('input:checkbox[id^="someid_"]:checked') nhưng nó không hoạt động?

+0

mã của bạn dường như đúng. bạn đang sử dụng phiên bản jQuery nào? bạn có thể đăng một ví dụ đầy đủ ở đâu đó trực tuyến không? – Anurag

+0

kiểm tra mã demo là kiểm tra chính xác cho các phiên bản jquery cũng! – Harish

+0

Tôi nghĩ rằng vấn đề là một cái gì đó khác .. –

Trả lời

25

mã này đang làm việc kiểm tra bản demo

http://jsfiddle.net/csTpG/

Markup

<input type="checkbox" id="someid_1" checked/> 
<input type="checkbox" id="someid_2" checked/> 
<input type="checkbox" id="someid_3" checked/> 
<input type="checkbox" id="someid_4"/> 

jQuery

var n = $('input:checkbox[id^="someid_"]:checked').length; 
alert(n); // count of checked checkboxes 

$('input:checkbox[id^="someid_"]:checked').each(function(){ 
    alert($(this).attr("id"));}); 
+0

không hoạt động .... –

+3

mã đang hoạt động. –

+1

tôi nghĩ rằng anh ấy muốn cắt tất cả các hộp kiểm có id tương tự không tìm thấy hộp kiểm đã chọn kiểm tra – Vivek

0

Tôi không chắc chắn nếu bạn có thể thực hiện tìm kiếm trên thuộc tính ID . nó thường chỉ trả về một giá trị. Bạn có thể thiết lập các lớp để some_0 thay vào đó và sau đó tìm kiếm hoặc sử dụng một thuộc tính tùy chỉnh như

<input type=checkbox customattr=some_1> 
-1

thử này ...

$('input:checkbox').filter('#someid').attr(":checked") 
+0

Tại sao bạn chọn tất cả các hộp kiểm và sau đó lọc ra theo ID? Mã này cũng không truy xuất các hộp đã chọn, nó lấy thuộc tính ": checked" từ '# someid'. Bạn có nghĩa là để viết '$ ('# someid)' –

0

mã bạn đã cố gắng là hoàn toàn đúng, có thể b mã chạy trước phân tích các yếu tố cần thiết để cố gắng,

$(document).ready(function(){$('input:checkbox[id^="someid_"]:checked')}) 
1
<head> 
    <script type="text/javascript" src="../js/jquery.js"></script> 
    <script type="text/javascript"> 
     var isChecked = false; 

     function allSelected() 
     { 
      // this line is for toggle the check 
      isChecked = !isChecked; 

      //below line refers to 'jpCheckbox' class 
      $('input:checkbox.jpCheckbox').attr('checked',isChecked); 

      //OR, 
      //$('input:checkbox.jpCheckbox').attr('checked','checked'); 
     } 
    </script> 
</head> 

<body> 
    <form> 
     Select All<input type="checkbox" id="selectAllCheckbox" onclick="allSelected()" /><br/> 

     A<input type="checkbox" id="jpCheckbox" class="jpCheckbox" /><br/> 
     B<input type="checkbox" id="jpCheckbox" class="jpCheckbox" /><br/> 
     C<input type="checkbox" id="jpCheckbox" class="jpCheckbox" /><br/> 
    </form> 
</body> 
+0

Xin chào, hãy thử phương pháp này, phương pháp này đang hoạt động để chọn/bỏ chọn tất cả các hộp kiểm cùng với cùng một lớp trên cùng một biểu mẫu. –

Các vấn đề liên quan