jQuery text () возвращает ноль в Google Chrome - PullRequest
0 голосов
/ 31 октября 2010

Я изучаю странное поведение в Google Chrome при использовании текстовой функции jQuery:

$(document).ready(function () {
   $("#btnSubmit").click(function () {
       var t = $('#txtMessage').text();
       alert(t); //this shows nothing in Google Chrome, but works in IE9
   });
});

когда я меняю var t = $('#txtMessage').text(); на var t = $('#txtMessage').val();, он работает в Chrome.

Итак, что не так с функцией text ()?

PS: txtMessage - это текстовое поле

Ответы [ 2 ]

10 голосов
/ 31 октября 2010
  • .text() получает внутренний текст элемента, поэтому при получении значения он просто не подходит.
  • .val() получает свойство value элемента типа ввода и должно быть тем, что вы используете для извлечения / установки значения (этот включает <textarea> элементыдаже если значение находится между тегами).

Вопрос не в том, «почему не .text() работает в Chrome?», а в «почему делает .text() в IE? "Палка с .val() для входов.

1 голос
/ 31 октября 2010

Функция .val() должна использоваться для получения значений элементов формы, таких как input, select, textarea, ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...