使用button.click()提交后等待表单响应

时间:2019-10-05 20:53:27

标签: puppeteer

我正在使用Puppeteer提交表单,但我无法弄清楚如何等待响应,因为常规方法不起作用。

提交必须通过在提交按钮上调用click()而不是调用form.submit()来完成,此页面上的错误导致我无法控制。因此,这不起作用:

await page.$eval('#form', form => form.submit);

提交表单不会导航到新页面,而是会修改HTML。我也尝试过waitForNavigation的每个选项,waitUntil都无效。

我可以尝试其他方法吗?谢谢

1 个答案:

答案 0 :(得分:2)

  

提交表单不会导航到新页面,而是会修改HTML。

在这种情况下,您可以通过page.waitForSelector

等待CSS选择器

例如,如果成功提交后在表单上方显示成功消息,则只需等待此CSS选择器出现在dom中即可:

await page.waitForSelector('form div.success');