jQuery get textarea text

04/16/2020 14:00:01

Recently I have started playing with jQuery, and have been following a couple of tutorials. Now I feel slightly competent with using it (it's pretty easy), and I thought it would be cool if I were able to make a 'console' on my webpage (as in, you press the ` key like you do in FPS games, etc.), and then have it Ajax itself back to the server in-order to do stuff.

I originally thought the best way would be to just get the text inside the textarea, and then split it, or should I use the keyup event, convert the keycode returned to an ASCII character, append the character to a string and send the string to the server (then empty the string).

I couldn't find any information on getting text from a textarea, all I got was keyup information. Also, how can I convert the keycode returned to an ASCII character?

Verified Answer (710 Votes)

09/28/2008 06:17:47

Why would you want to convert key strokes to text? Add a button that sends the text inside the textarea to the server when clicked. You can get the text using the value attribute as the poster before has pointed out, or using jQuery's API:

$('input#mybutton').click(function() {
    var text = $('textarea#mytextarea').val();
    //send to server and process response

Answer #2 (35 Votes)

06/13/2014 15:32:46

Where it is often the text function you use (e.g. in divs etc) then for text area it is val




$('#myTextBox').val('new value');

Answer #3 (24 Votes)

07/06/2010 08:57:36

You should have a div that just contains the console messages, that is, previous commands and their output. And underneath put an input or textarea that just holds the command you are typing.

| consle output ...           |
| more output                 |
| prevous commands and data   |
> This is an input box.

That way you just send the value of the input box to the server for processing, and append the result to the console messages div.

Hack Hex uses Stack Exchance API by the Stack Exchange Inc. to scrape questions/answers under Creative Commons license.