如何使用jQuery获取多个文本?

时间:2017-02-09 14:45:11

标签: jquery asp.net-mvc

如何使用jQuery获取此循环创建的第一个td的文本?

假设此代码生成14行:

@foreach (string item in Model)
{
    <tr>
        <td id="td_name" style="border-left: thin">@item</td>                
        <td><input type="text" id="txtGrade_@item" onclick="" style="width: 40px;border-left: thin"/></td>
        <td><input type="checkbox" id="chkStudent_@item" value="@item" /></td>
    </tr>
}

2 个答案:

答案 0 :(得分:1)

尝试使用.eq()方法选择提供索引的所需元素,并使用.text()方法获取文字。

检查示例:

&#13;
&#13;
function getFirstCellTextList(tableElement) {
   if (tableElement instanceof jQuery) {
      // Create an array
      var textList = [];

      // Iterate over each table row
      tableElement.find('tbody tr').each(function() {
          // Get the first cells's text and push it inside the array
          var row = $(this);
          if (row.children('td').length > 0) {
             textList.push(row.children('td').eq(0).text());
          }                  
      });
      return textList;
   }
}

// Get the array
var myList = getFirstCellTextList($('#your_table'));

alert(myList);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="your_table">
  <thead>
    <tr>
    <th>First</th>
    <th>Senond</th>
    <th>Third</th>
    </tr>    
  </thead>
  <tbody>
    <tr><td>First cell 1</td><td>Second cell 1</td><td>Third cell 1</td></tr>
    <tr><td>First cell 2</td><td>Second cell 2</td><td>Third cell 2</td></tr>
    <tr><td>First cell 3</td><td>Second cell 3</td><td>Third cell 3</td></tr>
    <tr><td>First cell 4</td><td>Second cell 4</td><td>Third cell 4</td></tr>
  </tbody>
</table>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

this.$('td:first')将为您提供文档中的第一个td。然后,您可以使用text()获取文字,或使用this.$('td:first')[0].innerHTML获取td下的HTML