提问者:小点点

从特定于Primefaces的小部件重写方法


我想覆盖一个功能的Primeface数据组件。根据这个问题:我如何找到和/或覆盖基于widgetVar的Primeface组件中的JavaScript?使用PrimeFaces.widget.DataTable.prototype.是可能的。但是我想只覆盖一个数据,而不是所有的函数。

这不起作用:

<p:dataTable widgetVar="myTable" ...>
</p:dataTable>
....
<script type="text/javascript">
       $(document).ready(function(){
           if (PF('myTable') !== undefined) {
                PF('myTable').jq.datatable({
                     showCellEditor: function (c) {
                         console.log('my function');
                     }
                 });
            }
         });
</script>

是应该这样做还是我完全错了?


共1个答案

匿名用户

用我的一张表测试:

PF('myTable').showCellEditor = function() {
    console.log('my function')
}

如果您需要:

PF('myTable').showCellEditor = function() {
    console.log('my function')
    // call the generic implementation:
    PrimeFaces.widget.DataTable.prototype.showCellEditor.call(this);
}

另请参阅:

  • 使用 JavaScript 原型调用方法
  • Primefaces widgetvar 简介