112 votes

comment obtenir la valeur d'un textarea en jquery ?

J'ai ce formulaire et j'essaie de récupérer la valeur de la zone de texte. pour une raison quelconque, il ne veut pas.

<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);
});

o jsfiddle

Des idées ?

202voto

VisioN Points 62518

La valeur du textarea est également prise avec val méthode :

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

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea cols="60" rows="5" id="message" name="message">
Hello,
 world!
</textarea>

29voto

Vega Points 44724

Vous devez utiliser .val() pour textarea car il s'agit d'un élément et non d'un wrapper. Essayez

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

Mise à jour du violon

23voto

Vohuman Points 79122

Vous devez utiliser val() au lieu de html()

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

18voto

En javascript :

document.getElementById("message").value

5voto

SidTechs1 Points 67

Vous n'avez pas besoin d'utiliser textarea#message

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

Vous pouvez utiliser directement

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X