bootstrap table 增加复选框

转自http://blog.csdn.net/shangmingchao【商明超的博客
1.全选
<th><input type="checkbox" id="checkAll" name="checkAll" /></th>
2.节选

<s:iterator value="allAohSapLog" id="id">
<tr>
<s:if test="parentId==2"> 
<td><input type="checkbox" name="checkItem" value="<s:property value="id" />"/></td>
</s:if>

</s:iterator>


jQuery(function($) { $('.input-daterange').datepicker({ language: "zh-CN", autoclose:true }); $('#createDateDiv').datetimepicker({ format: 'YYYY-MM-DD' }); function initTableCheckbox() { var $thr = $('table thead tr'); var $checkAllTh = $('<th><input type="checkbox" id="checkAll" name="checkAll" /></th>'); /*将全选/反选复选框添加到表头最前,即增加一列*/ $thr.prepend($checkAllTh); /*“全选/反选”复选框*/ var $checkAll = $thr.find('input'); $checkAll.click(function(event){ /*将所有行的选中状态设成全选框的选中状态*/ $tbr.find('input').prop('checked',$(this).prop('checked')); /*并调整所有选中行的CSS样式*/ if ($(this).prop('checked')) { $tbr.find('input').parent().parent().addClass('warning'); } else{ $tbr.find('input').parent().parent().removeClass('warning'); } /*阻止向上冒泡,以防再次触发点击操作*/ event.stopPropagation(); }); /*点击全选框所在单元格时也触发全选框的点击操作*/ $checkAllTh.click(function(){ $(this).find('input').click(); }); var $tbr = $('table tbody tr'); var $checkItemTd = $('<td><input type="checkbox" name="checkItem" /></td>'); /*每一行都在最前面插入一个选中复选框的单元格*/ $tbr.prepend($checkItemTd); /*点击每一行的选中复选框时*/ $tbr.find('input').click(function(event){ /*调整选中行的CSS样式*/ $(this).parent().parent().toggleClass('warning'); /*如果已经被选中行的行数等于表格的数据行数,将全选框设为选中状态,否则设为未选中状态*/ $checkAll.prop('checked',$tbr.find('input:checked').length == $tbr.length ? true : false); /*阻止向上冒泡,以防再次触发点击操作*/ event.stopPropagation(); }); /*点击每一行时也触发该行的选中操作*/ $tbr.click(function(){ $(this).find('input').click(); }); } initTableCheckbox(); });

//改

jQuery(function($) {
$('.input-daterange').datepicker({
language: "zh-CN",
autoclose:true
});
$('#createDateDiv').datetimepicker({
format: 'YYYY-MM-DD'
});
var parentId=$("#parentId").val();
function initTableCheckbox() { 
var $thr = $('table thead tr');
var $checkAllTh = $("[name='checkAll'][checked]"); 
//var $checkAllTh = $('<th><input type="checkbox" id="checkAll" name="checkAll" /></th>'); 
/*将全选/反选复选框添加到表头最前,即增加一列*/ 
//$thr.prepend($checkAllTh); 
/*“全选/反选”复选框*/ 
var $checkAll = $thr.find('input'); 
$checkAll.click(function(event){ 
/*将所有行的选中状态设成全选框的选中状态*/ 
$tbr.find('input').prop('checked',$(this).prop('checked')); 
/*并调整所有选中行的CSS样式*/ 
if ($(this).prop('checked')) { 
$tbr.find('input').parent().parent().addClass('warning'); 
} else{ 
$tbr.find('input').parent().parent().removeClass('warning'); 

/*阻止向上冒泡,以防再次触发点击操作*/ 
event.stopPropagation(); 
}); 
/*点击全选框所在单元格时也触发全选框的点击操作*/ 
$checkAllTh.click(function(){ 
$(this).find('input').click(); 
}); 
var $tbr = $('table tbody tr'); 
//var $checkItemTd = $('<td><input type="checkbox" name="checkItem" value=<s:property value="id" />/></td>'); 
/*每一行都在最前面插入一个选中复选框的单元格*/ 
//$tbr.prepend($checkItemTd); 
/*点击每一行的选中复选框时*/ 
$tbr.find('input').click(function(event){ 
/*调整选中行的CSS样式*/ 
$(this).parent().parent().toggleClass('warning'); 
/*如果已经被选中行的行数等于表格的数据行数,将全选框设为选中状态,否则设为未选中状态*/ 
$checkAll.prop('checked',$tbr.find('input:checked').length == $tbr.length ? true : false); 
/*阻止向上冒泡,以防再次触发点击操作*/ 
event.stopPropagation(); 
}); 
/*点击每一行时也触发该行的选中操作*/ 
$tbr.click(function(){ 
$(this).find('input').click(); 
}); 

initTableCheckbox(); 
});

//获取checkbox值
function turn_311(){
var $checkAll = $("input[name='checkAll']");
if( $checkAll[0].checked==true){
$("#searchForm").attr('action','AohSapLog!turn_311.action');
$("#searchForm").submit();
}else{
var str="";
var $checkArray = $("input[name='checkItem']"); 
if(!$checkArray)return; 
for(var i=0;i<$checkArray.length;i++){
var value=$checkArray[i].checked;
if($checkArray[i].checked==true){
str+=$checkArray[i].value+",";
}
}
$("#idArray").val(str);
$("#searchForm").attr('action','AohSapLog!turn_311.action');
$("#searchForm").submit();
}
}

  

原文地址:https://www.cnblogs.com/qq1988627/p/6738448.html