c# - 使用 C# 从 WebBrowser 中的 JS 获取值

标签 c# javascript windows-phone-8 browser

我遇到了奇怪的行为。我不明白我的错误。 我想从 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/

相关文章:

c# - Windows Phone 8.1 Google Book REST Api 调用与 HttpClient : HRESULT: 0x80072EFD

c# - MySql.Data.MySqlClient.Replication.ReplicationManager 抛出 System.TypeInitializationException

c# - "scan"如何能成为 C# 中的 lambda 表达式?

c# - Linux (Redhat) 上的 .NET Core 应用程序在用户主目录中创建神秘的 ".net"目录/文件

javascript - TypeScript 生成的 JavaScript 中出现类型错误

c# - 以编程方式从 Windows Phone 8.1 XAML 中的 ListView 的特定 ListViewItem 到达 TextBlock

c# - WP8 ListPicker SelectionChanged 一开始就被触发

c# - 表示驼峰类名称中的缩写

javascript - 带有下拉菜单的输入组按钮在 Bootstrap 中不起作用

javascript - 使用字符串值访问 javascript 对象