【问题标题】:Accessing elements of class="input-append"访问 class="input-append" 的元素
【发布时间】:2016-09-29 10:45:53
【问题描述】:

我在<tr> 中使用class="input-append",所以每一行都包含不同的输入,我有一个按钮来追加新的输入行,

<tr class="input-append">
  <td>
    <span>Person {{$index+1}}</span>
  </td>
  <td align="center">
    Time From: <input type="text" ng-model="person.name"> Age: <input type="text" ng-model="person.age">    
  </td> 
</tr>

例如: ID,Name,Age ,当我单击按钮时,将添加一个新行。我如何访问 javascript 中的输入?!例如我想访问第二行的年龄。

问候。

【问题讨论】:

  • 只需选择 input-append 并从第二个 td 元素中获取 age 的值?或者第 4 个 td 元素,因为你有一个包含跨度,另一个是我猜的标题?
  • 谢谢,我的意思是我想使用 document.getElementById( '' ).value;我如何使用类似的东西访问每一行的元素?!
  • 只需使用 document.getElementsByClassName('input-append')[0] document.getElementsByClassName('input-append')[0].getElementsByTagName('td')[1]
  • 看来你使用 angularJS 那你为什么不使用它来获取值呢?

标签: javascript html angularjs forms append


【解决方案1】:

使用 document.getElementsByClassName() 和 QuerySelector

trs = document.getElementsByClassName("input-append");

personName = trs[1].querySelector("input[ng-model='person.name']").value;
personAge = trs[1].querySelector("input[ng-model='person.age']").value;

和你的 html

<table>  
<tr class="input-append" >
<td>
<span>Person {{$index+1}}</span></td>
<td align="center">Time From: <input type="text"  ng-model="person.name">  Age: <input type="text"  ng-model="person.age">  
</td>   
</td>
</tr>
<tr class="input-append" >
<td>
<span>Person {{$index+1}}</span></td>
<td align="center">Time From: <input type="text"  ng-model="person.name" value="testName">  Age: <input type="text"  ng-model="person.age" value="testAge">  
</td>   
</td>
</tr>
</table>  

查看演示:http://jsbin.com/xemehoxono/edit?html,js,output

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-09
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 2017-02-08
    相关资源
    最近更新 更多