我遇到了奇怪的行为。我不明白我的错误。 我想从 HTML 页面读取一个值。我可以通过以下方式获取它:
JavaScript
function getSize() {
return (size.toString());
}
getSize();
输出(在 Chrome 控制台中)
120
C#
// wBrowser is not null and the page is loaded
String o = wBrowser.InvokeScript("eval", "getSize();").ToString();
Debug.WriteLine(o);
这里o
为空。
我读了msdn doc并尝试一些研究但没有成功。我错过了什么?
谢谢。
最佳答案
嗯...
刚刚发现我的错误。 我的解决方案正在发挥作用。 Lukasz 的解决方案也有效。
我只是忘记将运行模式从 Release
切换到 Debug
...
所以可行的解决方案是:
String o1 = wBrowser.InvokeScript("eval", "getSize();").ToString();
// Lukasz's 1st solution
String o2 = wBrowser.InvokeScript("getSize").ToString();
// Lukasz's 2nd solution
String o3 = wBrowser.InvokeScript("eval", "size.toString();").ToString();
两者打印的尺寸都正确。
也许对其他人有帮助......
关于c# - 使用 C# 从 WebBrowser 中的 JS 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23095070/