我在bootstrap数据表中有记录,它有分页,每个记录都有一个复选框。假设当我单击第1页中的某些复选框和第2页中的某些复选框时,表单将仅传递第2页中复选框的值。如何从第1页检索复选框值?非常感谢任何帮助。
var checkboxes = $("input[type='checkbox']"),
btn = $("#btnCutoff");
//structure of table
var table = $('#table').DataTable({
"bLengthChange": false,
"pageLength": 5,
"bFilter": false
});
//disable button when no records are selected
btn.attr("disabled","disabled");
checkboxes.on('click', function(event) {
if($(this).prop('checked')){
btn.removeAttr('disabled');
} else {
btn.attr("disabled",!checkboxes.is(":checked"));
}
});
$("#table tbody").on("click",".clickable-row", function (event) {
if (event.target.type !== 'checkbox') {
$(':checkbox', this).trigger('click');
}
});
点击按钮时,会转到javascript函数
function doEnquiry(){
var f = document.frm;
f.method = "POST";
f.action = "test.jsp";
f.target = "_self";
f.submit();
}
我希望将复选框值分配到此处
String curr[] = request.getParameterValues("chkTest");
任何人都可以帮助我吗?
答案 0 :(得分:1)
在每个复选框上单击是否选中该复选框创建隐藏字段以存储其值。您可以依赖隐藏字段值来捕获所需的所有复选框值,并可以在服务器端轻松访问它们。
checkboxes.on('click', function(event) {
if($(this).prop('checked')){
btn.removeAttr('disabled');
$('form').append('<input type="hidden" name="fieldname" value="'+this.value+'" />');
} else {
btn.attr("disabled",!checkboxes.is(":checked"));
}
});
答案 1 :(得分:1)
Jquery代码
$(document).ready(function() {
$('#viewlist').DataTable();
$("#button").click(function() {
var chcklist = new Array();
var oTable = $('#viewlist').dataTable();
var rowcollection = oTable.$("#emp_name:checked", {"page": "all"});
rowcollection.each(function(index,elem) {
chcklist.push($(elem).val());
});
$.post(
"../accounts/updateSalaryHold.jsp",
{list: chcklist},
function (values) { }
);
});
});
jsp页码
String[] arrayVal = request.getParameterValues("list[]");