vue+element-ui 实现table单元格点击编辑,并且按上下左右键单元格之间切换
Posted tohold
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue+element-ui 实现table单元格点击编辑,并且按上下左右键单元格之间切换相关的知识,希望对你有一定的参考价值。
celledit(row, column, cell, event){ console.log(cell,event) let oldel = cell.children[0]; let oldVal = cell.children[0].innerhtml console.log(oldVal) if (column.label != "日期") { //event.target.innerHTML = ""; var cellInput = document.createElement("input"); //let cellInput = ‘<input type="text" class="edit" value="‘+oldVal+‘" style="width:100%;height:100%;border:none;background-color:transparent;outline:none;padding-left:10px">‘ cellInput.setAttribute("type", "text"); cellInput.setAttribute("class", "edit"); cellInput.value = oldVal; cellInput.style.width = "100%"; cellInput.style.border = "none"; cellInput.style.backgroundColor = "transparent"; cellInput.style.paddingLeft = "10px"; cellInput.style.outline="none"; console.log("cellInput",cellInput) oldel.style.display =" none" //cell.innerHTML = cellInput ; cell.appendChild(cellInput); $(".edit").focus() console.log(‘oldel‘,cell.innerHTML) cellInput.onblur = function() { oldel.innerHTML = cellInput.value oldel.style.display ="block"; cell.removeChild(cellInput); //event.target.innerHTML = cellInput.value; }; } //let dom = cell.children[0] //$(".edit").remove() //dom.innerHTML = input; //$(".edit").focus() // dom.contentEditable = true; // console.log(cell.previousSibling.children[0]) // if(dom.contentEditable = true){ // dom.onkeyup = function(e){ // console.log(e) // if( e.keyCode == 38){ // console.log("上件s") // }else if(e.keyCode == 37){ //键盘按钮左键 // console.log("zuo") // dom.contentEditable = false // cell.previousSibling.children[0].contentEditable = true; // }else if(e.keyCode == 39){ //右按钮 // console.log("you") // dom.contentEditable = false // cell.nextSibling.children[0].contentEditable = true; // }else if(e.keyCode == 40){ // console.log("xia") // } // } // } // dom.onblur = function(){ // console.log(33343) // } // if(dom.contentEditable == "false"){ // console.log(23232) // } // $(".edit").blur(function(){ // if( $(".edit").val() != oldVal) // console.log("this",$(this)) // console.log("input",$(this).parent()) // //console.log(‘this‘,$(this).parent().val($(".edit").val())) // $(this).parent()[0].innerText = $(".edit").val(); // $(this).remove() // }) },
以上是关于vue+element-ui 实现table单元格点击编辑,并且按上下左右键单元格之间切换的主要内容,如果未能解决你的问题,请参考以下文章
Element-ui 表格 (Table) 组件中动态合并单元格
element-ui:el-table合并单元格后的行高亮显示
vue+elementUi+table实现单元格可输入功能StringsliceTimeFullYearMonthDateHoursMinutesSeconds