[英]How to return value from JavascriptExecutor.executeScript() method in java
[英]how to return a string from JavascriptExecutor in java
我正在嘗試拾取從Java調用的JavascriptExecutor返回的字符串(這是我第一次使用它)。 我在SO上看過其他幾篇文章,但是在將字符串帶入Java之前,它們都停止了。
搜索互聯網,每個人都說這應該可行:
JavascriptExecutor js =(JavascriptExecutor) driver;
js.executeScript("return document.title");
String CatchS = js.toString();
System.out.println("Output from javascript:" + CatchS);
但我得到的只是Output from javascript:FirefoxDriver: firefox on XP (506d8fd0-0ce2-4693-8e56-2166a77a5136)
如果您故意提供無效的JavaScript(即無法正常工作),則與從JavascriptExecutor獲得的結果完全相同。
我還嘗試了JavaScriptExecutor的ExecuteScript中的Get Value中建議的替代方法,甚至嘗試返回“ hello world”。 什么都沒有。 我想念什么?
我需要它返回一個字符串,因為這就是我要插入的實際代碼將執行的操作(一旦它可以正常工作)。 謝謝。
當我執行以下命令時
String CatchS = (String) js.executeScript("return document.title");
我有一個例外
Exception in thread "main" java.lang.Error: Unresolved compilation problem: Type mismatch: cannot convert from Object to String.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.