Текстовая область не получает обновленный текст в jQuery - PullRequest
12 голосов
/ 25 августа 2011

Итак, у меня есть бритва:

@{
    int i=1;
    foreach(var story in Model.Storylines)
    {
        <span style="float:left;">Storyline @i</span> <span style="float:right; margin-right:5px;">Character Count: @story.CharCount</span><br /><br />
        <textarea id=@("entry"+@i) rows="5" style="width:730px; overflow:auto;">@story.Description</textarea><br /><br />
        i++;
    }
}

Итак, текстовая область с идентификатором entry1 имеет описание типа «это история», когда страница первоначально загружается.Как только я что-то ввожу в эту текстовую область, а затем нажимаю кнопку, единственная функция которой:

alert($("#entry1").text());

, я все равно получаю «это история».Почему текстовая область не обновляется текстом, который я набрал?

Ответы [ 4 ]

25 голосов
/ 25 августа 2011

Вы хотите использовать $("#entry1").val(), чтобы получить текст внутри текстовой области.

6 голосов
/ 25 августа 2011

Вы захотите использовать .val() вместо .text(), так как для доступа к содержимому <textarea>:

alert($("#entry1").text());

должно быть:

alert($("#entry1").val());
3 голосов
/ 25 августа 2011

Я думаю, что текст причина, по которой .text() не работает, заключается в том, что свойство text получает текстовое значение между тегом textarea, и это значение не обновляется при изменении значения textarea.

Введенный текст сохраняется в атрибуте value элемента управления textarea.

Здесь приведен пример fiddle .val() в jQuery выбирает одно и то же значение атрибута, поэтому вы также можете использовать val()

3 голосов
/ 25 августа 2011

.val вернет содержимое текстовой области

http://api.jquery.com/val/

Метод .val () в основном используется для получения значений элементов формы

http://api.jquery.com/text/

В отличие от метода .html (), .text () может использоваться как в документах XML, так и в HTML. Результатом метода .text () является строка, содержащая объединенный текст всех соответствующих элементов.

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