如何从selenium java中的禁用输入字段中获取文本

Pra*_*hmi 6 java selenium

如何在selenium中从禁用的输入字段中获取文本java

下面是HTML标签.

<input id="endDate" class="ng-pristine ng-untouched ng-valid ng-valid-maxlength" data-ng-disabled="dateRange!=='Cm'" size="10" maxlength="10" data-ng-model="endDate" validate-date="" name="endDate" disabled=""/>
Run Code Online (Sandbox Code Playgroud)

我正在寻找selenium java代码来从该禁用的输入字段中获取文本值.

尝试getAttribute("disabled").但它返回true WebElement.getAttribute("id"),但它返回null值.它都没有奏效.

该字段的值将动态生成.例如,如果我今天选择,则将填充值SYSDATE.对于昨天的价值将是SYSDATE-1

Syn*_*oon 7

尝试:

webElement.findElement(By.cssSelector("#endDate")).getAttribute("value")
Run Code Online (Sandbox Code Playgroud)

要么

webElement.findElement(By.cssSelector("#endDate")).getText()
Run Code Online (Sandbox Code Playgroud)

你必须尝试它取决于你的特殊情况.如果这些variante不起作用,请检查您的选择器是否正确.

如果所有这些都不起作用,请尝试获取angular.element的值,如下所示:

return (String) ((JavascriptExecutor) this.webDriver).executeScript("angular.element($('#endDate')).text()");
Run Code Online (Sandbox Code Playgroud)