跳至主要内容

对话框

Dialog 对象通过 page.on('dialog') 事件由页面分派。

使用 Dialog 类的示例

const { chromium } = require('playwright');  // Or 'firefox' or 'webkit'.

(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
page.on('dialog', async dialog => {
console.log(dialog.message());
await dialog.dismiss();
});
await page.evaluate(() => alert('1'));
await browser.close();
})();
注意

对话框会自动关闭,除非存在 page.on('dialog') 监听器。当存在监听器时,它**必须**要么 dialog.accept() 要么 dialog.dismiss() 对话框 - 否则页面将 冻结 等待对话框,并且像点击这样的操作将永远无法完成。


方法

accept

在 v1.9 之前添加 dialog.accept

在对话框已接受时返回。

用法

await dialog.accept();
await dialog.accept(promptText);

参数

  • promptText 字符串 (可选)#

    在提示中输入的文本。如果对话框的 type 不是提示,则不会产生任何影响。可选。

返回值


defaultValue

在 v1.9 之前添加 dialog.defaultValue

如果对话框是提示,则返回默认提示值。否则,返回空字符串。

用法

dialog.defaultValue();

返回值


dismiss

在 v1.9 之前添加 dialog.dismiss

在对话框已关闭时返回。

用法

await dialog.dismiss();

返回值


message

在 v1.9 之前添加 dialog.message

在对话框中显示的消息。

用法

dialog.message();

返回值


page

添加于:v1.34 dialog.page

启动此对话框的页面(如果可用)。

用法

dialog.page();

返回值


type

在 v1.9 之前添加 dialog.type

返回对话框的类型,可以是 alertbeforeunloadconfirmprompt 之一。

用法

dialog.type();

返回值