Rod*_*erB 474 javascript ajax jquery
最近我开始玩jQuery,并且已经关注了几个教程.现在我觉得使用它有点能干(这很简单),我觉得如果我能在我的网页上制作一个"控制台"会很酷(就像你在FPS游戏中一样按下'键' ,等),然后让Ajax本身回到服务器,以便做的事情.
我原本认为最好的方法是在textarea中获取文本,然后拆分它,或者我应该使用keyup事件,将返回的键码转换为ASCII字符,将字符附加到字符串并将字符串发送到服务器(然后清空字符串).
我找不到任何关于从textarea获取文本的信息,我得到的只是密钥信息.另外,如何将返回的键码转换为ASCII字符?
Era*_*rin 698
为什么要将键击转换为文本?添加一个按钮,在单击时将textarea内的文本发送到服务器.你可以在指出之前使用value属性作为海报来获取文本,或者使用jQuery的API:
$('input#mybutton').click(function() {
var text = $('textarea#mytextarea').val();
//send to server and process response
});
Run Code Online (Sandbox Code Playgroud)
Tho*_*lle 34
它通常是您使用的文本函数(例如在div等),然后对于文本区域,它是val
得到:
$('#myTextBox').val();
Run Code Online (Sandbox Code Playgroud)
组:
$('#myTextBox').val('new value');
Run Code Online (Sandbox Code Playgroud)
p3d*_*ola 23
你应该有一个只包含控制台消息的div,即以前的命令及其输出.并在下面放置一个输入或textarea只保存您正在键入的命令.
-------------------------------
| consle output ... |
| more output |
| prevous commands and data |
-------------------------------
> This is an input box.
Run Code Online (Sandbox Code Playgroud)
这样,您只需将输入框的值发送到服务器进行处理,并将结果附加到控制台消息div.
我已经发现我可以使用以下函数将事件的keyCode转换为字符:
var char = String.fromCharCode(v_code);
Run Code Online (Sandbox Code Playgroud)
然后我会将字符附加到字符串,当按下回车键时,将字符串发送到服务器.我很抱歉,如果我的问题看起来有点神秘,标题意味着几乎完全偏离主题,那是一大早,我还没吃早餐;).
谢谢你们的帮助.
小智 7
将"控制台"这个词拼写成混乱.
如果你想模仿一个旧式的全/半双工控制台,你可以使用这样的东西:
$('console').keyup(function(event){
$.get("url", { keyCode: event.which }, ... );
return true;
});
Run Code Online (Sandbox Code Playgroud)
event.which有按下的键.对于退格处理,event.which === 8.
您可以通过名称和 ID 获取文本区域数据
// by name
<textarea name="comment"></textarea>
let text_area_data = $('textarea[name="comment"]').val();
// by id
<textarea id="comment" name="comment"></textarea>
let text_area_data = $('textarea#comment').val();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
712190 次 |
| 最近记录: |