操り人形師でエンターを押しても効果はないようです。ただし、他のキーを押すと、必要な処理が実行されます。これは動作します:
await page.press('ArrowLeft');
これはしません:
await page.press('Enter');
入力は次のようになります。
何か案は?
編集:私はpage.keyboard.downとpage.keyboard.upも試しました。
await page.type(String.fromCharCode(13));
このサイト を使用すると、page.type
はbeforeinput
およびinput
イベントをディスパッチしますが、page.press
しません。これはおそらくバグですが、幸いなことにEnterキーコード(13)を送信することは機能しているようですので、今のところは回避できます。
私はpage.keyboard.press('Enter');
を通常使用しました:)私のために動作します。
ドキュメントをご覧ください here 。 .keyboard
の前に.press
を使用して適切に機能させる必要があると思います。
page.keyboard.press()
を使用して、Enterキーを押すことをシミュレートできます。以下のオプションのいずれかが機能します。
_await page.keyboard.press('Enter'); // Enter Key
await page.keyboard.press('NumpadEnter'); // Numeric Keypad Enter Key
await page.keyboard.press('\n'); // Shortcut for Enter Key
await page.keyboard.press('\r'); // Shortcut for Enter Key
_
さらに、 page.$()
と elementHandle.press()
の組み合わせを使用して、Enterキーを押す前に要素にフォーカスできます。
_await (await page.$('input[type="text"]')).press('Enter'); // Enter Key
await (await page.$('input[type="text"]')).press('NumpadEnter'); // Numeric Keypad Enter Key
await (await page.$('input[type="text"]')).press('\n'); // Shortcut for Enter Key
await (await page.$('input[type="text"]')).press('\r'); // Shortcut for Enter Key
_
さらに、 page.type()
を使用できます。
_await page.type(String.fromCharCode(13));
_
同様に、 page.keyboard.type()
を使用できます。
_await page.keyboard.type(String.fromCharCode(13));
_
別の代替方法は、 page.keyboard.sendCharacter()
メソッドを使用することです。
_await page.keyboard.sendCharacter(String.fromCharCode(13));
_
page.keyboard.down()
と page.keyboard.up()
の組み合わせを使用することもできます。
_// Enter Key
await page.keyboard.down('Enter');
await page.keyboard.up('Enter');
// Shortcut for Enter Key
await page.keyboard.down('NumpadEnter');
await page.keyboard.up('NumpadEnter');
// Shortcut for Enter Key
await page.keyboard.down('\n');
await page.keyboard.up('\n');
// Shortcut for Enter Key
await page.keyboard.down('\r');
await page.keyboard.up('\r');
_