這次要介紹的是使用 JQuery 來對多個 checkbox 做取值得動作,並實作全選與取消全選的動作。
首先是 checkbox 群組在 Html 部分:
接著是 jQuery 部份:
要特別注意的地方是,checkbox 在沒有勾選的時候是不會傳 value 的,有勾選才會傳 value,以及它可以像 radio 群組一樣使用 name 來區分所在的群組。
首先是 checkbox 群組在 Html 部分:
- <input name='checkboxGroup' type='checkbox' value='1'> 1
- <input name='checkboxGroup' type='checkbox' value='2'> 2
- <input name='checkboxGroup' type='checkbox' value='3'> 3
- <input id='clickAll' type='checkbox'> 全選
接著是 jQuery 部份:
- $("#clickAll").click(function() {
- if ( $("#clickAll").prop("checked") ) {
- $("input[name='checkboxGroup']").each(function() {
- $(this).prop("checked", true);
- });
- } // if 全選的checkbox被勾選
- else {
- $("input[name='checkboxGroup']").each(function() {
- $(this).prop("checked", false);
- });
- } // else 全選的checkbox被取消勾選
- });
至於如果需要 Submit 表單的時候要如何知道哪些被勾選就如下段程式碼:
- var ids = new Array();
- $("input[name='checkboxGroup']:checked").each(function(){
- ids.push($(this).val());
- }); // 得到被勾選項目的Array
要特別注意的地方是,checkbox 在沒有勾選的時候是不會傳 value 的,有勾選才會傳 value,以及它可以像 radio 群組一樣使用 name 來區分所在的群組。
沒有留言:
張貼留言