我正在尝试使用jquery提交字段,通常在页面中您可以单击提交按钮或在字段中按Enter键。 我是用chrome脚本做的。 现在,如果我输入:
$('#myButton').click()
在控制台中,这实际上工作正常,但是当我从脚本函数调用相同的代码时,它不起作用。 我也试过用这个:
var e = jQuery.Event("keydown");
e.which = 50;
e.keyCode = 50;
$("#myButotn").trigger(e);
但仍然没有结果。
具体来说,我愿意点击的按钮有一个onClick =“submitFunction()”
答案 0 :(得分:2)
这是触发按键点击的更好方法。
$(window).keydown(function (e) {
if ( e.which === 50 ) {
$("#myButton").click();
}
});
演示:http://jsfiddle.net/bc7r3vq1/1/
顺便说一下,键码50是数字2
答案 1 :(得分:0)
现在,我找到了一个解决方案,但我不确定哪个是问题所在。 首先,我开始使用tampermonkeys,从那里我用
$('#textField').submit();
它工作正常。
我现在要检查是否必须使用此方法,或者它只是与我的扩展程序相关的内容。
编辑:只有当我使用篡改密钥时它才有效..
答案 2 :(得分:-1)
我认为您的问题来自浏览器政策,阻止您的代码伪造用户操作。 Chrome只允许您伪造用户操作,如果它直接从另一个用户操作处理程序调用,如实际用户点击keydown。在点击处理程序中尝试使用您的代码,如果它因为此策略块而起作用。