参考博文:https://www.cnblogs.com/zhenfei-jiang/p/7065038.html
按照网上查找的资料敲了代码
term.on('data', function(data) { // on方法 实时监控输入的字段
console.log("send to the backend:"+data);
// ws.send(data);
});
出现的问题 : 输入一个key就执行send方法发送数据给服务器,还没输入完就发送了。
后来换了一种方法
1 term.on('data', function(data) {
2 $("#dspTxt2").keydown(function(event){
3 console.log(event.keyCode);
4 if (event.keyCode == 13){
5 ws.send(data);
6 }
7 });
8 });
也出现了问题,识别不到回车keycode,随意按其他的键都有keycode,唯独回车没有。
问题尚未解决 考虑直接用折中的方式:在外面的<input>中输入并获取原定内容,按回车。直接发送至后台,后台处理完之后回传的数据直接显示在Terminal黑屏上。毕竟时间不够了,基本需求先实现。后续如果有时间,再考虑换成xterm.js的方式。
补坑更新:
请参考本人这篇博文 --》https://www.cnblogs.com/JanSN/p/11578485.html
这里当我们在 term 输入数据时,你输入的每一个字符每一个键值都是传到后台,由后台传到另一台远程终端。 然后,从远程终端上抓到输出回传到后台,后台回传到前端显示的。即你在前端的终端中输入一个a, 你看到它显示在界面终端上了,但其实它是经历了一个过程之后从远程终端回来的。而不是像输入框那样,你打一个字就显示在上面一样。
|