幾乎所有我已建立的使用者介面有此功能處理或刪除它們從列表中選擇多重專案。雖然它很容易在JavaScript中實現這一功能,使用jQuery,這是真正的樂趣。我會告訴你一個簡單的實現多個複選框選擇和取消選擇的功能添加到任何網頁。我們將有一個表,並在每一行的複選框中的一些資料。會有一個選擇都在表頭的複選框。如果使用者選擇/取消全選“複選框,將得到表中的所有複選框選中或取消相應。現在還有一件事,我們想在這裡補充的是,假設使用者選擇所有的複選框,然後全選“複選框應該自動被選中。如果使用者單擊“全選第一個,然後取消選中任何複選框,然後全選也應該選中自動。
<HTML>
<HEAD>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<TITLE>Multiple Checkbox Select/Deselect - DEMO</TITLE>
</HEAD>
<BODY>
<H2>Multiple Checkbox Select/Deselect - DEMO</H2>
<table border="1">
<tr>
<th><input type="checkbox" id="selectall"/></th>
<th>Cell phone</th>
<th>Rating</th>
</tr>
<tr>
<td align="center"><input type="checkbox" class="case" name="case" value="1"/></td>
<td>BlackBerry Bold 9650</td>
<td>2/5</td>
</tr>
<tr>
<td align="center"><input type="checkbox" class="case" name="case" value="2"/></td>
<td>Samsung Galaxy</td>
<td>3.5/5</td>
</tr>
<tr>
<td align="center"><input type="checkbox" class="case" name="case" value="3"/></td>
<td>Droid X</td>
<td>4.5/5</td>
</tr>
<tr>
<td align="center"><input type="checkbox" class="case" name="case" value="4"/></td>
<td>HTC Desire</td>
<td>3/5</td>
</tr>
<tr>
<td align="center"><input type="checkbox" class="case" name="case" value="5"/></td>
<td>Apple iPhone 4</td>
<td>5/5</td>
</tr>
</table>
</BODY>
</HTML>
jQuery代碼
加入後,在頭上面的HTML部分中的jQuery代碼
<SCRIPT language="javascript">
$(function(){
// add multiple select / deselect functionality
$("#selectall").click(function () {
$('.case').attr('checked', this.checked);
});
// if all checkbox are selected, check the selectall checkbox
// and viceversa
$(".case").click(function(){
if($(".case").length == $(".case:checked").length) {
$("#selectall").attr("checked", "checked");
} else {
$("#selectall").removeAttr("checked");
}
});
});
</SCRIPT>
在這裡,我們在上面的程式碼05註冊處理常式上單擊“全選”複選框。點擊這個複選框,我們檢查/取消所有複選框中的DataTable。
作者:newcnzz