Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从excel复制一行并粘贴到制表器表格中,使字段保持可编辑状态?_Javascript_Excel_Vue.js_Tabulator - Fatal编程技术网

Javascript 如何从excel复制一行并粘贴到制表器表格中,使字段保持可编辑状态?

Javascript 如何从excel复制一行并粘贴到制表器表格中,使字段保持可编辑状态?,javascript,excel,vue.js,tabulator,Javascript,Excel,Vue.js,Tabulator,我正在使用vue.js中的制表器库,我想从excel中复制一行或多行,并将其粘贴到制表器表中,但这样做时,数据只粘贴到一列中 下面是excel中的数据,我想复制这些数据并粘贴到制表器表(注意:制表器表也有3列),因此在粘贴这些excel数据时,这些数据将添加到制表器的一列中,但我希望这些复制的数据应添加到3列中。谁能建议我该怎么办? 这是我的密码: <template> <div ref="table"></div> </te

我正在使用vue.js中的制表器库,我想从excel中复制一行或多行,并将其粘贴到制表器表中,但这样做时,数据只粘贴到一列中

下面是excel中的数据,我想复制这些数据并粘贴到制表器表(注意:制表器表也有3列),因此在粘贴这些excel数据时,这些数据将添加到制表器的一列中,但我希望这些复制的数据应添加到3列中。谁能建议我该怎么办?

这是我的密码:

<template>
  <div ref="table"></div>
</template>

<script>
import Tabulator from 'tabulator-tables'; //import Tabulator library
import 'tabulator-tables/dist/css/tabulator.min.css';
import moment from 'moment';

export default {
  data: function() {
    return {
      tabulator: null, //variable to hold your table
      tableData: [
        
      ], //data for table to display
      columns: [
        {
          title: 'Name',
          field: 'name',
          editor: 'input',
          validator: ['required', 'maxLength:50'],
        },
        {
          title: 'Task',
          field: 'owner',
          editor: 'input',
        },
        {
          title: 'Start Date',
          field: 'start_date',
          sorter: 'date',
          editor: 'input',
          validator: 'required',
        },
      ],
    };
  },
  watch: {
    //update table if data changes
    tableData: {
      handler: function(newData) {
        this.tabulator.replaceData(newData);
      },
      deep: true,
    },
  },
  mounted() {
    //instantiate Tabulator when element is mounted
    this.tabulator = new Tabulator(this.$refs.table, {
      data: this.tableData, //link data to table
      reactiveData: true, //enable data reactivity'
      layout: 'fitColumns',
      columns: this.columns, //define table columns
      selectable: false,
    });
  },
};
</script>


从“制表器表”导入制表器//导入制表器库
导入“tablator tables/dist/css/tablator.min.css”;
从“力矩”中导入力矩;
导出默认值{
数据:函数(){
返回{
制表器:null,//用于保存表格的变量
表格数据:[
],//要显示的表的数据
栏目:[
{
标题:“姓名”,
字段:“名称”,
编辑:'输入',
验证器:['required','maxLength:50'],
},
{
标题:“任务”,
字段:“所有者”,
编辑:'输入',
},
{
标题:“开始日期”,
字段:“开始日期”,
分拣员:“日期”,
编辑:'输入',
验证器:“必需”,
},
],
};
},
观察:{
//如果数据发生更改,请更新表
表格数据:{
处理程序:函数(newData){
this.tablator.replaceData(newData);
},
深:是的,
},
},
安装的(){
//在装入元素时实例化制表器
this.tablator=新制表器(this.$refs.table{
data:this.tableData,//将数据链接到表
reactiveData:true,//启用数据反应性'
布局:“fitColumns”,
columns:this.columns,//定义表列
可选:false,
});
},
};

您似乎没有在表中启用剪贴板功能,如果没有启用此功能,制表器将无法接受粘贴的数据

您需要在表构造函数中设置剪贴板选项

var table=新制表器(“示例表”{
剪贴板:“粘贴”//启用剪贴板粘贴功能
});

有关详细信息,请参见

请创建一个JS提琴来演示您的问题。但是,它仍然不起作用。由于我使所有字段都可编辑,所以当我单击某一行以粘贴从excel复制的行时,它们将仅粘贴到一列中。