点燃的数据表,如何使用回调函数



我正在使用点燃的数据表(用于代码点火器),我正在使用服务器端。我想根据它们的值以红色或绿色显示一些值。

这就是我在edit_column中调用函数的方式:

->edit_column('releve_statut', '$1', $this->label_this('releve_statut'))

这就是我调用的函数:

public function label_this($str) {
    if($str == "Réalisé"){
        $r =  label_badge('success', 'Réalisé'); 
    } else if ($str == "En cours"){
       $r = label_badge('warning', 'En cours'); 
    }
    return $r;
}

有什么建议吗?

谢谢:)

如果你想在

服务器端使用回调,一个简单而轻松的解决方案是创建一个 Codeigniter Helper 类。

因此,在您的代码中,更改 edit_column 的第三个参数:

->edit_column('releve_statut', '$1', 'label_this(releve_statut)')

最后,在帮助程序类中定义函数label_this($str)。 不要忘记在调用 $this->datatables->generate() 之前加载它。

->edit_column('releve_statut', '$1', 'callback_label_this(releve_statut)');

不是这方面的专家,但我知道这是它在编码点火器其他地方的做法,所以虽然我无法测试,但这应该有效是有道理的

原创(仍然有点相关)这里你需要做的是有一个CSS样式表,这样

.bg-success{
    color: green;
}
.bg-warning{
    color: red;
}

这会将文本样式设置为彩色如果您想要彩色背景,请将颜色替换为背景颜色。

服务器端的回调函数对我不起作用:/

我所做的解决方案是将 fnDrawCallback 添加到数据表初始化(客户端)中,该初始化在每个"draw"事件上调用。

"fnDrawCallback": function( oSettings ) {
                        var $green = $('.statut-style').filter(function() {
                                    return  ($(this).text() == 'Réalisé');
                                });
                        // Set the green elements to color green
                        $green.addClass("badge bg-success");
      },

如果有人知道如何在服务器端做到这一点,如果您将其分享;)我会很高兴

谢谢!

最新更新