0

我有下表:

我正在尝试获取名字

<table id="myTable">
  <thead>
    <tr>
      <th>FirstName</th>
      <th>LastName</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td data-usage="firstname"><input type="text" value="Mike" /></td>
      <td><input type="text" /></td>
    </tr>
    <tr>
      <td data-usage="firstname"><input type="text" value="Jo" /></td>
      <td><input type="text" /></td>
    </tr>
  </tbody>
</table>

所以我有一些jquery:

$("#myTable tbody tr td[data-usage='firstname'] input").each(function () {
             alert($(this).value());
         });

我希望每个名字都会收到两条消息。

相反,我得到:

Uncaught TypeError: Object [object Object] has no method 'value'

请有人可以解释我做错了什么

4

3 回答 3

0

应该$(this).val()不是$(this).value()

于 2013-10-03T23:53:07.523 回答
0

你想要的是$(this).val(). jQuery 中没有 value() 函数。

于 2013-10-03T23:53:01.183 回答
0

jQuery 对象没有 value 属性,只有原生 DOM 节点有

alert( this.value );

使用 jQuery,您将使用以下val()方法:

alert( $(this).val() );
于 2013-10-03T23:53:05.227 回答