我有函数 table.on,现在如果我将表 2 中的一个单元格放到表 1 中,整列都会变绿
js fiddle : http://jsfiddle.net/L3Lhw7jk/5/
tr td:nth-child(2)
整列变绿,我只想在 td
中放置而不是整个 tr td:第 n 个 child (2)
CSS:
tr.highlight td {
background-color: #D0ECE7 !important;
}
td.member-highlight {
background-color: #73C6B6 !important;
}
如果:
if (r[0].length > 0) {
$row.parents('table').find('tr').removeClass('highlight');
$row.addClass('highlight');
var members = $('#example tr td:nth-child(2)');
members.filter(':not(:has(input))').addClass('member-highlight');
members.find('input').addClass('border-highlight');
}
var members = $('#example tr td:nth-child(2)');
在整个列中应用整个绿色
table.on('mousedown', 'tbody tr', function() {
var $row = $(this);
var r = table.rows(function(i, data) {
return data.member == $row.children().first().text();
});
if (r[0].length > 0) {
$row.parents('table').find('tr').removeClass('highlight');
$row.addClass('highlight');
var members = $('#example tr td:nth-child(2)');
members.filter(':not(:has(input))').addClass('member-highlight');
members.find('input').addClass('border-highlight');
}
rowCache.push({
row: r
});
});
最佳答案
你好,看看这个例子 worked example
function mouseUp(event) {
var names = $('#example tr td:nth-child(2)');
var ctrl = $(document.elementsFromPoint(event.clientX, event.clientY)).filter('#example tr td:nth-child(2),input.border-highlight');
if (ctrl.length > 0 && rowCache.length > 0) {
var el = rowCache[0];
var data = el.row.data();
if (data.length > 0) {
if (ctrl.is('input'))
ctrl.val(data[0].name);
else
ctrl.text(data[0].name);
el.row.remove().draw();
ctrl.addClass('name-highlight');
//names.removeClass('name-highlight');
names.find('input').removeClass('border-highlight');
}
}
rowCache = [];
}
关于javascript - Jquery apply bg for just for one <td> not the whole column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42668263/