2010-08-05 86 views
1

基本上我需要做的是運行一系列複選框,如果它被選中,我需要使用ajax提交它的值。現在我似乎無法找到一種方法來逐個運行每個複選框。這是我的網頁上的代碼。jquery - 檢查是否選中一個複選框

$(document).ready(function(){ 
$('#submit').click(function(){ 

}); 
}); 

<?php 
/** 
* Include vB core. 
*/ 
require_once('./global.php'); 
require_once(DIR . '/includes/functions_bigthree.php'); 
require_once(DIR . '/includes/functions_forumlist.php'); 

/** 
* Grab the divisions from the database. 
*/ 
$query = $db->query_read("SELECT division FROM rollcall_divisions"); 
while($array = $db->fetch_array($query)){ 
echo "<input type='checkbox' value=".$array[division].">".$array[division]."<br>"; 
} 
?> 

<input type="submit" id="submit"> 
+0

您是否完整提交了代碼的相關部分? – Behrang 2010-08-05 23:07:22

回答

1

可以使用:checked selector您的複選框,並使用each()方法提交他們Ajax請求:

$('input[type=checkbox]:checked').each(function(){ 
    // submit your ajax request   
}); 

要真正提交Ajax請求,jQuery的有$.ajax()方法。

+0

你用收音機而不是複選框,但我明白了。 – Renari 2010-08-05 23:38:31

+0

哎呀......你可以爲此感謝美味的啤酒。現在修復。 – Pat 2010-08-05 23:41:30

0
$('#yourform').find(':checkbox').each(function() { 
    // do ajax stuff on $(this) 
}); 
4

您可以使用:checkbox過濾器選擇和each這樣的:

$('#submit').click(function(){ 
    $(':checkbox').each(function(){ 
    if ($(this)).is(':checked') { 
     // your code.... 
    } 
    }); 
}); 

:checkbox目標網頁上的所有複選框,然後each用於遍歷每個人。後來在is的條件下與:checked過濾器選擇器一起使用以知道這些複選框中的哪一個被實際檢查。

+0

+1,比我的更徹底。 – 2010-08-05 23:08:15