我需要使用Shift键在shift查询中选择多行,与shift-key select函数相同,并存储选定的行项目在一个变量中。另外我需要使用点击事件选择多行。如何使用shift键在jQuery数据表中选择多行
使用单个变量,我需要传递实时点击行和轮班选择行。我如何做到这一点?
这不能正常工作,也不会为所选行存储单个变量。我错在哪里?
我的代码:
var aSelected = [];
var lastSelected;
$('#table tr').live('click', function (event) {
var tableRow = $(this).closest("tr").prevAll("tr").length + 1;
var id = this.cells[0].innerHTML;
var index = jQuery.inArray(id, aSelected);
if (index === -1) {
aSelected.push(id);
} else {
aSelected.splice(index, 1);
}
$(this).toggleClass('row_selected');
if (event.shiftKey) {
var table = $('#table ');
var start = Math.min(tableRow, lastSelected);
var end = Math.max(tableRow, lastSelected);
for (var i = start; i < end; i++) {
$('#table').each(function() {
table.find('tr:gt(' + (start - 1) + '):lt(' + (end) + ')').addClass('row_selected');
});
}
} else {
lastSelected = $(this).closest("tr").prevAll("tr").length + 1;
}
});
比如我有20行。有3个原因我选择行并传递选定的行ID 1.使用Ctrl键选择多行并传递2.使用Shift键选择下一个10行并传递3.使用Shift键选择下一个10使用Ctrl键其它10行以及使所述12行
aSelected.splice (指数,1);你使用这行代码,但你没有添加任何内容到aSelected中,你对这行代码的目的是什么? – OQJF 2013-02-26 06:10:20
只是删除已选择的行。多数民众赞成y使用此线 – 2013-02-26 06:15:19