Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.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 如何在不使用jQuery的情况下将输入文本作为单元格的表数据复制到剪贴板?_Javascript_Html_Angular_Typescript - Fatal编程技术网

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中的内容并将其删除。