2012-04-02 231 views
1

我在處理這個項目時遇到了一些問題。選擇複選框

我有一個不同的複選框列表,這些複選框是使用PHP從數據庫中提取的記錄。

現在,當我點擊其中一個複選框時,我希望該選項以某種方式顯示在其他地方。我一直試圖讓它與jQuery一起工作,但我沒有那種經驗,所以沒有什麼我可以做的。

+0

你能舉個例子嗎你試過 – bretterer 2012-04-02 18:40:01

+0

PHP本身不能做到這一點。 JavaScript或jQuery將是最好的解決方案。 – j08691 2012-04-02 18:45:11

回答

1

它實際上是通過使用AJAX完成的。但是如果你知道/想知道jQuery,你應該知道jQuery中的AJAX。在jQuery中,您必須調用與checkbox中特定id的click事件關聯的函數。爲了簡單起見,讓我們考慮每個獨特的Id給予每個複選框,然後您可以單獨調用一個jQuery Click事件來處理它。

<script> 
$(function(){ 

$("#yourid").click(function() { 

//do what you want to do here if checkbox "yourid" is clicked 
}); 

$("#yournextid").click(function(){ 

//do what your next event is. 

}); 
}); 
</script> 

這裏yourid',「yournextid」是對應的複選框

+0

感謝您的回覆,我需要一種方法來遍歷所有的複選框,以便我可以檢查哪一個已被選中。 這是一種很難寫250+複選框的功能。而且這些更新也是動態的。 – 2012-04-03 08:08:04

0

的ID的保持一個隱藏的變量來存儲選中的複選框的值。

正如「密碼」所示,將複選框的onclick事件提交給javascript函數。將複選框對象作爲參數傳遞。

在函數中檢查複選框是否已選中或未選中。如果選中,則將複選框的值添加到隱藏變量中。如果未選中,則從隱藏變量中刪除該值,之後再進行檢查。

這樣你總是有選中的複選框列表。

0

我解決了我遇到的問題。

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title></title> 
<script src="http://code.jquery.com/jquery-latest.js"></script> 
<script type="text/javascript"> 
$(function(){ 
    $('.checkbox').change(function(event){ 
     checked_value = $(this).val();   
     if(this.checked) 
     { 
          $("#content").append("<div id='" + checked_value +"'>New value: " + checked_value + "</div>"); 

     } 

     if(!this.checked) 
     { 
      $("#" + checked_value).remove(); 
     } 

    }); 

      $('#checkall').change(function(){ 
        $('.checkbox').attr('checked',$(this).attr('checked')) 
      }); 

}); 
</script> 
    </head> 
    <body> 
    <input type="checkbox" id="cb1" class="checkbox" value='a' /> 
    <input type="checkbox" id="cb2" class="checkbox" value='b' /> 
    <input type="checkbox" id="cb3" class="checkbox" value='c' /> 

<div id="content"></div> 
</body> 
</html> 

上面的代碼是我現在使用的。

我不記得我從哪裏得到它,而是將它歸功於它的各自所有者。