Подтвердить что ты не робот

Как получить значение textarea в jquery?

У меня есть эта форма и я пытаюсь получить значение из текстовой области. по какой-то причине он не хочет.

<form action="/profile/index/sendmessage" method="post" enctype="application/x-www-form-urlencoded">
    <div class="upload_form">
        <dt id="message-label"><label class="optional" for="message">Enter Message</label></dt>
        <dd id="message-element">
        <textarea cols="60" rows="5" id="message" name="message"></textarea></dd>
        <dt id="id-label">&nbsp;</dt>
        <dd id="id-element">
        <input type="hidden" id="id" value="145198" name="id"></dd>
        <dt id="send_message-label">&nbsp;</dt>
        <dd id="send_message-element">
        <input type="submit" class="sendamessage" value="Send" id="send_message" name="send_message"></dd>
    </div>
</form>


$("input.sendamessage").click(function(event) {
    event.preventDefault();

    var message = $('textarea#message').html();
    var id      = $('input#id').val();

    console.log(message + '-' + id);
});

или jsfiddle

любые идеи?

4b9b3361

Ответ 1

Значение textarea также берется с помощью метода val:

var message = $('textarea#message').val();

Ответ 2

Вам нужно использовать .val() для textarea, поскольку это элемент, а не оболочка. Попробуйте

$('textarea#message').val()

Обновлена ​​скрипка

Ответ 3

вы должны использовать val() вместо html()

var message = $('#message').val();

Ответ 4

Вам не нужно использовать textarea#message

var message = $('textarea#message').val();

Вы можете напрямую использовать

var message = $('#message').val();

Ответ 5

Вы должны проверить, что textarea имеет значение null, прежде чем использовать val(), в противном случае вы получите ошибку undefined.

if ($('textarea#message') != undefined) {
   var message = $('textarea#message').val();
}

Затем вы можете делать все с сообщением.

Ответ 6

в javascript:

document.getElementById("message").value

Ответ 7

$('textarea#message') не может быть undefined (если через $ вы подразумеваете jQuery, конечно).

$('textarea#message') может иметь длину 0, а затем $('textarea#message').val() будет пустым, чтобы все

Ответ 8

все значения всегда принимаются с .val();

см. код bello

var message = $('#message').val();