使用C#从WebBrowser中的JS中获取值
本文关键字:获取 JS 中的 WebBrowser 使用 | 更新日期: 2023-09-27 17:58:41
我遇到了一个奇怪的行为。我不明白我的错误。我想从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文档,尝试了一些研究,但没有成功。我错过了什么?
谢谢。
嗯。。。
刚刚发现我的错误。我的解决方案正在发挥作用。卢卡斯的解决方案同样有效。
我只是忘了把运行模式从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();
两者都打印正确的尺寸。
也许这对其他人有帮助。。。