我正在尝试使用输入和下拉菜单来编辑单元格。在这种情况下,目标是编辑磁盘大小。
因此,我需要, editor:"input", editor:true, validator:["min:0", "max:999", "numeric"]}与, editor:"select", editorParams:{"MB":"MB", "TB":"TB", "GB":"GB"}
最终结果大约是146GB。
第一次尝试: 由于它看起来像一个自定义编辑器,因此我这样写:
var CapacityEditor = function(cell, onRendered, success, cancel, editorParams){
var capacity = document.createElement("div");
capacity.style.width = "100%";
var size = document.createElement("input");
size.setAttribute("type", "text");
size.style.width = "50px";
size.style.textAlign = "right";
onRendered(function(){
size.focus();
//size.style.css = "100%";
});
capacity.append(size);
var multiplier = document.createElement("select");
multiplier.style.width = "45px";
multiplier.append(new Option("MB","MB",true,true));
multiplier.append(new Option("GB","GB"));
multiplier.append(new Option("TB","TB"));
capacity.append(multiplier);
var multi = "MB";
function successFunc(){
success(size.value+multi);
}
function setmultiFunc() {
multi = multiplier.options[multiplier.selectedIndex].text;
successFunc();
}
size.addEventListener("change", successFunc);
size.addEventListener("blur", successFunc);
multiplier.addEventListener("change", successFunc);
multiplier.addEventListener("blur", successFunc);
return capacity;
}
和:
{title:"Capacity", field:"Size", align:"center", width:95, editor:CapacityEditor, sorter:SizeSorter, sortable: true},
因此,在那个问题上,存在“一些”问题。-我不知道success()应该做什么-我返回一个div,希望内容会填充到单元格中-每当我输入一个值并进行选择时,它根本不会被保存;可能是因为我首先要返回div
相关分类