jquery终端提交命令而不按回车
Posted
技术标签:
【中文标题】jquery终端提交命令而不按回车【英文标题】:jquery terminal submit command without pressing enter 【发布时间】:2016-10-10 20:12:25 【问题描述】:如何在不按回车键的情况下提交命令? 我需要让终端识别语音(该部分已经完成)并将其可视化为命令,而不是虚拟按 Enter 以获得 ajax 响应,这可能吗?谢谢
【问题讨论】:
$( "target" ).click()
?
你好 almanegra,实际上我需要一个命令来执行而不点击,但在 jquery 终端中调用一个函数。
我相信有一个像“push”这样的本机命令,但我不知道如何使用它。这是参考terminal.jcubic.pl/api_reference.php 只是几个例子。
【参考方案1】:
当你有新的提示和新的命令集时推送创建新的解释器,执行你可以使用 exec 的命令:
term.exec('command');
它将回显命令并执行您的命令(如果您将 true 作为第二个参数传递,它将不会回显提示和正在执行的命令),例如,如果您有:
var term = $('...').terminal(
foo: function()
this.echo('foo');
);
term.exec('foo');
将执行你的 foo 函数。
或者你可以模拟回车的keydown事件:
var e = $.Event("keydown");
e.ctrlKey = ctrl;
e.altKey = alt;
e.shiftKey = shift;
e.which = e.keyCode = 13;
$(document.documentElement || window).trigger(e);
如果您使用term.insert('word');
添加文本,最好使用按键事件。
编辑:按键事件可能不适用于最新版本的 jQuery 终端来触发事件,请查看 Jest tests。
【讨论】:
以上是关于jquery终端提交命令而不按回车的主要内容,如果未能解决你的问题,请参考以下文章
使用javascript自动填写“表格”和“提交”而不按“提交”[重复]