制表符 - 在编辑之前清除单元格的内容

Tabulator - clear the contents of the cell, before editing

我正在使用 Tabulator JavaScript 库。在那里,当用户单击可编辑单元格时,我想清除可编辑单元格的内容。

您将需要使用自定义编辑器来实现此目的,以下是没有赋值的输入编辑器版本:

var inputEditor = function(cell, onRendered, success, cancel, editorParams){

        //create and style input
        var cellValue = cell.getValue(),
        input = document.createElement("input");

        input.setAttribute("type", "text");

        input.style.padding = "4px";
        input.style.width = "100%";
        input.style.boxSizing = "border-box";

        input.value = "";

        onRendered(function(){
            input.focus();
            input.style.height = "100%";
        });

        function onChange(e){
            if(((cellValue === null || typeof cellValue === "undefined") && input.value !== "") || input.value != cellValue){
                success(input.value);
            }else{
                cancel();
            }
        }

        //submit new value on blur or change
        input.addEventListener("change", onChange);
        input.addEventListener("blur", onChange);

        //submit new value on enter
        input.addEventListener("keydown", function(e){
            switch(e.keyCode){
                case 13:
                success(input.value);
                break;

                case 27:
                cancel();
                break;
            }
        });

        return input;
}

然后您可以将编辑器分配给列定义中的列:

{title:"Name", field:"name", editor:inputEditor}