Search code examples
javascriptjqueryhandsontable

Handsontable custom header


Good day everyone.

I have a task: make custom header, well, header itself is made, but i got following trouble:

i have custom html string for header ie :

var str = "
<tr><th colspan='2'>global</th><tr>
<tr><th><img src='generateonflypath' /></th><th><img src='generateonflypath' /></th><tr>
"

And when i apply it like this:

$hotContainer.handsontable({
    afterRender: function () {$('.htCore > thead').html(str);}
});

My HOT height remains same and lowest rows are unseen until i click on any cell. How to fix this issue? ('beforerender' event works even worse)

Thanks for Your time!


Solution

  • After few days of rough experiments I've ended with this solution:

    $container.handsontable({
        ...options...
        afterRender: function () { //add custom header
              $('.htCore > thead').html(jsonObj.Headers);
              //add container resize event handler for images that loaded in header
              $('.htCore > thead img').load(function(){
                     $('.wtHider').height($('.htCore').height()+10);
              });   
        } 
    });
    

    The idea behind this, is to change height of HOT's main table container. I think others can do just same with other events, not only load img, but change text etc...

    Hope this helps someone!