jquery при получении входных данных из таблицы на основе атрибута данных td, почему возникает ошибка при доступе к значению ввода

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'

Пожалуйста, кто-нибудь может объяснить, что я делаю неправильно

Теги:

3 ответа

0

Это должно быть $(this).val() not $(this).value()

0

Вы хотите $(this).val(). В jQuery нет функции value().

0

Объект jQuery не имеет свойства value, только собственные DOM-узлы

alert( this.value );

с jQuery вы будете использовать метод val():

alert( $(this).val() );
  • 0
    о тупой вопрос, спасибо за ответ
  • 0
    Это распространенная ошибка, был там!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню