javascript - 单击图标选择整个 Handsontable 列?

标签 javascript jquery html click handsontable

我希望表格中的每一列都有一个图标,单击该图标将选择整列。我有一个按钮用于第一个(不固定)列,但不能让每个图标都工作。另外,知道为什么最后一列(2018 年)的宽度更大而水平滚动似乎永远不会结束吗?提前致谢。

jQuery

container.handsontable("loadData", getData());

$("button#selectFirst").on('click', function () {
    //container.handsontable("selectCell", 0, 4)
    container.handsontable("selectCell", 0, 4, 5, 4)
});

http://jsfiddle.net/D4Kx3/5/

最佳答案

你需要像这样为箭头添加自定义渲染器

var myRendererArrow = function (instance, td, row, col, prop, value, cellProperties) {
    Handsontable.cellTypes.checkbox.renderer.apply(this, arguments);
    $(td).empty().append("<span class='sm-moon delBlue icon-right-arrow-17' data-icon='&#xe795;'>O</span>");
    return td;
};      

在 afterRender 回调中你需要添加这段代码

afterRender:function(){
    $('input[type=checkbox]').uniform(); 
    $('.checkall').on('click', function () {
        $(this).closest('table').find('input.htCheckboxRendererInput').prop("checked",this.checked);
        $.uniform.update();//update UniformJS
    });
//select clicked column
$(".icon-down-arrow-17").on("click",function(){
    var col=$(this).closest("th").index();
    container.handsontable("selectCell", 0, col, 5, col);
}); 
//select row only change th for tr and the column on selectCell
$(".icon-right-arrow-17").on("click",function(){
    var row=$(this).closest("tr").index();
    container.handsontable("selectCell", row, 0, row, 13,false);//false prevent scroll
});                  
}    

要仅在值已更改时更改背景颜色,您可以使用 afterChange 中的更改对象

$('#example1').handsontable('getInstance').addHook('afterChange', function(changes) {
    var ele=this;
    $.each(changes, function (index, element) {
        if(element[2]!=element[3]){    //if the original value is not equal to the actual 
               $(ele.getCell(element[0],ele.propToCol(element[1])))
                    .addClass('changeInput').data("change",true);
        }
    });
});    

http://jsfiddle.net/D4Kx3/10/

关于javascript - 单击图标选择整个 Handsontable 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19523374/

相关文章:

javascript函数仅在ie中未定义

javascript - ASP.NET MVC 部分 View ajax 帖子?

jquery - 使用 jQuery 修改 svg 文件

javascript - 主干 - View 未渲染

javascript - 存储 JSON : Javascript vs HTML

javascript - 如何在 chrome 开发者工具中重放一个 fetch

javascript - 只要点击一个按钮,如何执行一个 Action ?

javascript - 特定主导航链接的导航子菜单未正确显示

javascript - 在文本节点等空节点中添加文本/html

javascript - 过滤器必须显示默认组