Javascript 如何在不使用jQuery的情况下将输入文本作为单元格的表数据复制到剪贴板?
我有一个类似于以下格式的简单表格:Javascript 如何在不使用jQuery的情况下将输入文本作为单元格的表数据复制到剪贴板?,javascript,html,angular,typescript,Javascript,Html,Angular,Typescript,我有一个类似于以下格式的简单表格: <table> <thead> <tr> <th>Savings</th> </tr> </thead> <tbody> <tr> <td>Savings <button type="button" (click)="submit()">Click H
<table>
<thead>
<tr>
<th>Savings</th>
</tr>
</thead>
<tbody>
<tr>
<td>Savings
<button type="button" (click)="submit()">Click Here</button>
</td>
<td *ngFor="let data in items"><input type="text" [value]="data.savings"></td>
</tr>
<tr>
<td> [Similar to above row]</td>
</tr>
</tbody>
</table>
储蓄
储蓄
点击这里
[与上一行类似]
在jQuery不维护行结构的情况下,如何正确地复制带有输入值的表?我只关心行数据,而不关心标题或单元格名称。我咨询过,但它复制的是数据结构,而不是输入字段值 您是说获取表中每一行的输入框的值吗?可以通过纯javascript获得:
<script>
var values=document.getElementsByTagName("input");
alert(values[0].value);
</script>
var值=document.getElementsByTagName(“输入”);
警报(值[0]。值);
//document.getElementsByTagName(名称):按标记名查找元素
可以复制以下内容:
<script type="text/javascript">
function copy()
{
var values=document.getElementsByTagName("input");
values[0].select(); // Select object
document.execCommand("Copy"); //Execute browser copy command
alert("Has been copied, can be pasted");
}
</script>
<input type="button" onClick="copy()" value="Click Copy Code" />
函数副本()
{
var值=document.getElementsByTagName(“输入”);
值[0]。选择();//选择对象
document.execCommand(“复制”);//执行浏览器复制命令
警报(“已复制,可粘贴”);
}
复制多行:
<script type="text/javascript">
function copy()
{
var values=document.getElementsByTagName("input");
var textarea =document.createElement('textarea'); // create textarea label
//Traverse the content of the table and splice it into the content of the textarea
for(var i=0;i<values.length; i++){
textarea.innerHTML= textarea.innerHTML+=values[i].value+'\n'
}
document.body.appendChild(textarea) // Add to body
textarea.select();
document.execCommand("Copy"); //Execute browser copy command
textarea.remove();
alert("Has been copied, can be pasted");
}
</script>
<input type="button" onClick="copy()" value="Click Copy Code" />
函数副本()
{
var值=document.getElementsByTagName(“输入”);
var textarea=document.createElement('textarea');//创建textarea标签
//遍历表的内容并将其拼接到textarea的内容中
对于(var i=0;i)您的方法看起来很好,但这不是将数据作为单个字符串而不是保持n行格式吗?如果您要复制多行表,可以尝试遍历数据,然后使用textarea加载数据,复制textarea中的内容并将其删除。