0

我遇到了一个问题,我需要使用 jquery .eq() 函数访问<td><tr>下面是提到的代码,请看一下。

var foundElement = 3;

var values = $(this).children("td:nth-child('" + foundElement + "')").map(function () {...

上面的语句给出了在语句之间使用“foundElement”作为变量的错误。请为此提供替代解决方案或声明。

4

2 回答 2

2

您不需要在foundElement.

选择器应该是:

td:nth-child(3)

或在具有变量替换的字符串中:

$(this).children("td:nth-child(" + foundElement + ")")...
于 2012-08-24T09:27:18.723 回答
0

这是您的替代方式解决方案......演示链接如下:

演示: http ://codebins.com/bin/4ldqp82

HTML:

<table cellspacing="3" cellpadding="5" border="1">
  <tr>
    <th>
      col 1
    </th>
    <th>
      col 2
    </th>
    <th>
      col 3
    </th>
    <th>
      col 4
    </th>
    <th>
      col 5
    </th>
  </tr>

  <tr>
    <td>
      data cell 11
    </td>
    <td>
      data cell 21
    </td>
    <td>
      data cell 31
    </td>
    <td>
      data cell 41
    </td>
    <td>
      data cell 51
    </td>
  </tr>

  <tr>
    <td>
      data cell 12
    </td>
    <td>
      data cell 22
    </td>
    <td>
      data cell 32
    </td>
    <td>
      data cell 42
    </td>
    <td>
      data cell 52
    </td>
  </tr>

  <tr>
    <td>
      data cell 13
    </td>
    <td>
      data cell 23
    </td>
    <td>
      data cell 33
    </td>
    <td>
      data cell 43
    </td>
    <td>
      data cell 53
    </td>
  </tr>
</table>

jQuery

$(function() {
    $("table tr").each(function() {
        //Check If TD Exists...Then..
        if ($(this).children("td").length > 0) {
            var foundElement = 3;
            alert($(this).children("td:nth-child(" + foundElement + ")").text());
        }
        //OR Alternate Way is
        //Check If TD Exists...Then..
        /*if($(this).find("td").length>0){
                var nthElement=3;
                alert($(this).find("td:eq("+(nthElement-1)+")").text());
       }*/


    });
});

演示: http ://codebins.com/bin/4ldqp82

于 2012-08-24T11:11:54.203 回答