首页 文章

jQuery获取textarea文本

提问于
浏览
439

最近我开始玩jQuery,并且已经关注了几个教程 . 现在我觉得使用它有点干练(在我的网页上有's pretty easy), and I thought it would be cool if I were able to make a ' console'(例如,你在FPS游戏中按下'键'等),然后将Ajax本身重新安装到服务器上做东西 .

我原本认为最好的方法是在textarea中获取文本,然后拆分它,或者我应该使用keyup事件,将返回的键码转换为ASCII字符,将字符附加到字符串并将字符串发送到服务器(然后清空字符串) .

我找不到任何关于从textarea获取文本的信息,我得到的只是密钥信息 . 另外,如何将返回的键码转换为ASCII字符?

7 回答

  • 656

    将“控制台”这个词拼写成混乱 .

    如果你想模仿一个旧式的全/半双工控制台,你可以使用这样的东西:

    $('console').keyup(function(event){
        $.get("url", { keyCode: event.which }, ... );
        return true;
    });
    

    event.which有按下的键 . 对于退格处理,event.which === 8 .

  • 23

    我已经发现我可以使用以下函数将事件的keyCode转换为字符:

    var char = String.fromCharCode(v_code);
    

    然后,我将字符附加到字符串,当按下回车键时,将字符串发送到服务器 . 我很抱歉,如果我的问题看起来有点神秘, Headers 意味着几乎完全偏离主题,那是一大早,我还没吃早餐;) .

    谢谢你所有的帮助 .

  • 8

    通常,它是值属性

    testArea.value
    

    或者你需要什么我缺少的东西?

  • 27

    最好的方法:$('#myTextBox') . val('new value') . trim();

  • 13

    通常是你使用的文本函数(例如在div等中),然后对于文本区域,它是val

    得到:

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

    组:

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

    你应该有一个只包含控制台消息的div,即以前的命令及其输出 . 并在下面放置一个输入或textarea只保存您正在键入的命令 .

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

    这样您只需将输入框的值发送到服务器进行处理,并将结果附加到控制台消息div .

  • 7

    为什么要将键击转换为文本?添加一个按钮,在单击时将textarea内的文本发送到服务器 . 您可以使用value属性作为之前指出的海报或使用jQuery的API来获取文本:

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

相关问题