我正在try 使用Java脚本以编程方式按Enter键,但只有在输入的值更新之后,也使用Java脚本.
它正在成功更新值,但未按Enter键.
请注意,有多个inputs
,并且以下代码位于所有inputs
的循环中.
// update value of input
document.querySelectorAll("input[type='number']")[index].value = 5;
// press enter key
var el = document.querySelectorAll("input[type='number']")[index];
var ev = new KeyboardEvent('keydown', {altKey:false,
bubbles: true,
cancelBubble: false,
cancelable: true,
charCode: 0,
code: "Enter",
composed: true,
ctrlKey: false,
currentTarget: null,
defaultPrevented: true,
detail: 0,
eventPhase: 0,
isComposing: false,
isTrusted: true,
key: "Enter",
keyCode: 13,
location: 0,
metaKey: false,
repeat: false,
returnValue: false,
shiftKey: false,
type: "keydown",
which: 13});
el.addEventListener('keydown', function () {
console.log("Press enter now");
el.dispatchEvent(ev);
});
附注-这是一个Chrome扩展,操作网页的输入,这些输入需要按下Enter键,购物车才能更新.