点击复制表格中单元格信息

486 阅读1分钟

思路

点击单元格可以知道当前点击的行的id或者index
也就可以在data中查找到当前行的数据
再将当前行的数据中的值复制到剪切板

解决方案

// 复制文本方法
function copywangzhi(text) {
		let textarea = document.createElement("textarea"); //创建input对象
		let currentFocus = document.activeElement; //当前获得焦点的元素
		let toolBoxwrap = document.getElementById('NewsToolBox'); //将文本框插入到NewsToolBox这个之后
		let flag = "";
		toolBoxwrap.appendChild(textarea); //添加元素
		textarea.value = text;
		textarea.focus();
		if (textarea.setSelectionRange) {
			textarea.setSelectionRange(0, textarea.value.length); //获取光标起始位置到结束位置
		} else {
			textarea.select();
		}
		try {
			flag = document.execCommand("copy"); //执行复制
		} catch (eo) {
			flag = false;
		}
		toolBoxwrap.removeChild(textarea); //删除元素
		currentFocus.focus();
		alert(flag ? text+"复制成功" : "复制失败");
	}

// 查找当前行的数据
findRow(id) {
    const row = data.find(e => e.id === id)
    const text = row.key  //对应返回要复制的哪一列,也可以作为参数传入灵活使用
    copywangzhi(text)  // 调用复制文本方法
}