跳转到主要内容

Dialog

Dialog 对象通过 Page.Dialog 事件由页面分派。

使用 Dialog 类的示例

using Microsoft.Playwright;
using System.Threading.Tasks;

class DialogExample
{
public static async Task Run()
{
using var playwright = await Playwright.CreateAsync();
await using var browser = await playwright.Chromium.LaunchAsync();
var page = await browser.NewPageAsync();

page.Dialog += async (_, dialog) =>
{
System.Console.WriteLine(dialog.Message);
await dialog.DismissAsync();
};

await page.EvaluateAsync("alert('1');");
}
}
注意

对话框会自动关闭,除非存在 Page.Dialog 监听器。当监听器存在时,它必须通过 Dialog.AcceptAsync()Dialog.DismissAsync() 来处理对话框——否则页面将 冻结,等待对话框,并且像点击这样的操作将永远不会完成。


方法

AcceptAsync

v1.9 之前添加 dialog.AcceptAsync

当对话框被接受时返回。

用法

await Dialog.AcceptAsync(promptText);

参数

  • promptText string? (可选)#

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

返回


DefaultValue

v1.9 之前添加 dialog.DefaultValue

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

用法

Dialog.DefaultValue

返回


DismissAsync

v1.9 之前添加 dialog.DismissAsync

当对话框被取消时返回。

用法

await Dialog.DismissAsync();

返回


Message

v1.9 之前添加 dialog.Message

对话框中显示的消息。

用法

Dialog.Message

返回


Page

新增于: v1.34 dialog.Page

如果可用,此对话框的发起页面。

用法

Dialog.Page

返回


Type

v1.9 之前添加 dialog.Type

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

用法

Dialog.Type

返回