如何在 Selenium 中使用 sendKeys() 向文本框输入多行内容 林译川 2026-09-11 • 👁 0人浏览过 本文详解如何在 selenium webdriver ( java )中通过 sendkeys() 方法向单行文本框或可编辑区域插入换行内容,核心是组合使用 keys.shift + keys.enter 实现软换行,适用于需逐行输入 csv 格式数据等场景。 在 Web 自动化测试中,常需向 或支持多行输入的 (如某些富文本编辑器或启用 white-space: pre-wrap 的输入框)批量注入带换行符的数据。但需注意:标准 HTML 默认 不支持换行 ,若目标元素实际为 或具备多行渲染能力的富文本容器(如 contenteditable="true" 元素),则可通过 Keys.SHIFT + Keys.ENTER 模拟“软换行”(即插入 \n 对应的视觉换行,而非 表单提交 行为)。 ✅ 正确做法(推荐): 复制WebElement textbox = driver.findElement(By.id("myTextBox")); textbox.clear(); textbox.sendKeys( "13456,Teena" + Keys.SHIFT + Keys.ENTER + "12378,Tesa" + Keys.SHIFT + Keys.ENTER + "130987,Jhon" ); ⚠️ 关键说明: Keys.ENTER 单独使用会触发表单提交或焦点跳转, 不适用于多行输入 ; Keys.SHIFT + Keys.ENTER 是多数现代 浏览器 (Chrome、Edge、Firefox)中公认的“插入换行符”快捷键,等效于手动按 ⇧+↵; 若目标元素为 ,也可直接使用 "\n" 字符(更简洁): 复制textbox.sendKeys("13456,Teena\n12378,Tesa\n130987,Jhon"); 但该方式在部分富文本编辑器中可能被过滤或忽略,因此 Keys.SHIFT + Keys.ENTER 兼容性更广。 Comet AI 浏览器 下载 Comet AI 浏览器,体验由 Perplexity AI 驱动的革命性上网方式。内置 AI 助手可实时总结网页、跨标签页对比信息、自动执行任务。告别繁琐操作,让 AI 成为你的浏览副驾,大幅提升研究与工作效率。支持 Windows、macOS、Android 和 iOS。 下载 ? 扩展提示: Keys 枚举还支持 TAB、ARROW_DOWN、SPACE、ESCAPE 等常用功能键,可用于模拟复杂用户交互; 使用前务必确认目标元素已加载、可交互且未被遮挡(建议配合 WebDriverWait 显式等待); 若输入后未显示换行,请检查 CSS 属性(如 white-space: nowrap)或 JavaScript 拦截逻辑——此时需结合 executeScript() 注入原生值并触发 input 事件。 掌握此技巧,即可高效完成批量结构化数据(如 CSV 行、日志片段、配置列表)的自动化录入任务。 ‹ 上一篇 怎么利用Selector的wakeup方法唤醒处于阻塞状态的选择 下一篇 Java语言的11大特点(Java初学者必知) ›