需要在所附屏幕截图中了解此问题。如果我输入固定颜色值(即字体和行背景的#ffffff),它会很好地工作。 但是,如果我使用 val() 函数,我想使用箭头所指的 ajax 调用返回的值,则不起作用。也没有给我任何错误消息。
感谢您的帮助。
$(document).ready(function(){
$('#empTable').DataTable({
'processing': true,
'serverSide': true,
'serverMethod': 'post',
'ajax': {
'url':'diary2024-ajaxfile.php'
},
'columns': [
{ data: 'stamp1' },
{ data: 'enteron' },
{ data: 'story1' },
{ data: 'story2' },
{ data: 'menu_name' },
{ data: 'fcolor' },
{ data: 'bcolor' },
{ data: 'fileupload' },
{ data: 'viewfile' },
{ data: 'testing' },
{ data: 'menu_id' },
{ data: 'zcheckbox' },
],
'columnDefs': [
{ orderable:false, targets: 6 }
],
'aaSorting': [[ 0, "desc" ]],
fnRowCallback: function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {
if (aData.menu_name == "HBL") {
$('td', nRow).css('background-color', 'val(data.bcolor)');
$('td', nRow).css('color', 'val(data.fcolor)');
}
if (aData.menu_name == "Garden") {
$('td', nRow).css('color', '#0542fa');
$('td', nRow).css('font-weight', 'bold');
}
if (aData.menu_name == "HOME") {
$('td', nRow).css('background-color', '#0d05fc');
$('td', nRow).css('color', '#ffffff');
}
根据
.css
语法,您需要直接给出颜色值。
还有
data.bcolor
应该是aData.bcolor
修改后的工作代码:
if (aData.menu_name == "HBL") {
$('td', nRow).css('background-color', aData.bcolor);
$('td', nRow).css('color', aData.fcolor);
}