Jquery 数据表着色文本和背景的 RowCallBack 函数,使用 ajax 从 mysql 返回的值

问题描述 投票:0回答:1

需要在所附屏幕截图中了解此问题。如果我输入固定颜色值(即字体和行背景的#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');
                        }
jquery datatable colors callback row
1个回答
0
投票

根据

.css
语法,您需要直接给出颜色值。

还有

data.bcolor
应该是
aData.bcolor

修改后的工作代码:

if (aData.menu_name == "HBL") {
    $('td', nRow).css('background-color', aData.bcolor);
    $('td', nRow).css('color', aData.fcolor);
}
© www.soinside.com 2019 - 2024. All rights reserved.