You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Playwright中page.type弃用后的替代方案及页面按键输入问题

Playwright 替代已弃用的page.type方法解决输入问题

核心解决方案

当locator.fill无法适配特殊输入框时,使用**locator.pressSequentially**替代已弃用的page.type,该方法会模拟真实的逐个按键输入,与原page.type行为完全一致,能兼容带格式校验、动态掩码的自定义输入字段。

修改后的代码

await this.phoneContactField.scrollIntoViewIfNeeded();
await this.phoneContactField.click({position: {x: 35, y: 15}});
// 替换page.type,模拟逐个按键输入文本
await this.phoneContactField.pressSequentially('970-867-5309');

可选优化:模拟真实输入速度

如果需要贴近手动输入的延迟效果,可添加delay参数设置按键间隔:

await this.phoneContactField.pressSequentially('970-867-5309', { delay: 100 }); // 每个按键间隔100毫秒

补充说明

locator.fill直接修改输入框的value属性,会跳过前端的按键事件监听、输入格式化等逻辑,这是它在部分自定义输入框上失效的原因。而pressSequentially会触发完整的按键流程,和手动输入的交互逻辑完全匹配,因此能解决这类兼容性问题。

内容的提问来源于stack exchange,提问作者emery

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 22:44:53