javascript - 如何向网站添加文本框以接受和处理大量用户数据
问题描述
我正在尝试构建一个带有两个文本框的简单单页网站。一个接受用户从 Google 表格粘贴到文本框中的多列数据。我编写了代码来处理数据并将其输出(到第二个文本框)。
文本框需要能够接受三行和无限数量的列。
我正在努力弄清楚如何将此文本框插入网站并立即从中提取所有数据。代码的第一步(没有问题)是从每一行中创建一个列表。
样本输入如下:
Row 1: A \t B
Row 2: 1 \t 2
Row 3: ! \t ?
注意:从 Google 表格粘贴到记事本中的数据由制表符分隔,因此我假设它在文本框中是相同的。
我需要使用这些数据来制作三个列表:
1 = ['A', 'B']
2 = ['1', '2']
3 = ['!', '?']
谁能告诉我如何做到这一点或在哪里寻找这方面的指导?我已经在谷歌上搜索了尽可能多的这个问题的组合,但我还没有找到任何与处理用户输入有关的信息,即从 Google 表格中复制和粘贴多行和多列到文本框中。
解决方案
在换行符上拆分\n
,然后在空格上拆分\s
:
var text = document.getElementById("text").value;
var rows = text.split("\n");
var data = rows.map(row => row.split(/\s/g));
console.log(data);
<textarea id="text" rows="20" cols="80">A B
1 2
! ?</textarea>
推荐阅读
- android - Firebase:如何从集合中只获取一个文档?防止从数据库中读取的数量
- firebase - 如何减少 Firebase Cloud Firestore 上的读取操作?
- node.js - jenkins作业运行时如何为nodejs项目创建.env文件
- javascript - 如何使用变量获取 localStorage 数组项的值?
- java - 在 Selenium Java 中获取 ElementNotInteractableException 错误
- c++ - 什么是变量类型位(32)?
- google-cloud-platform - 在 GCP 上授予 IAM 权限“dialogflow.agents.restore”所需的 IAM 角色是什么
- swift - 应用程序终止后如何在 iOS 中获取位置或任何更新?
- elasticsearch - 如何在弹性搜索中为每小时访问者构建数据
- c# - 如何使用线程数组调用使用 linq 在 DB EF 上更新的相同函数?