Playwright Java技术咨询:如何获取输入框的VALUE值
解决Playwright获取输入框值的问题
嗨Loren,我来帮你搞定这个小问题~
你遇到的情况很典型:fill()能正常给输入框赋值,但textContent()拿不到输入的值,这是因为输入框(<input>)的用户输入内容并不存在于元素的文本内容里,而是存在它的value属性中。textContent()方法是用来获取元素内部的文本节点内容(比如<div>这是文本</div>里的文字),对input这类表单元素完全不适用。
给你两个靠谱的解决方法:
方法1:获取value属性值
直接通过getAttribute()方法读取input的value属性,这是最直接的方式:
String inputValue = page.locator("[placeholder=\"e.g. Max\"]").getAttribute("value");
方法2:使用Playwright专门的inputValue()方法
Playwright为表单元素提供了更贴合场景的inputValue()方法,它专门用来获取输入框、文本域这类元素的当前值,推荐你用这个:
String inputValue = page.locator("[placeholder=\"e.g. Max\"]").inputValue();
至于为什么fill()能正常工作?因为这个方法是Playwright专门为表单元素设计的,它会模拟用户输入的行为,直接把值设置到input的value属性上,所以完全没问题~
内容的提问来源于stack exchange,提问作者lorenlai
相关产品推荐
相关产品推荐

