2

我有一个 Silverlight 浏览器外 (OOB) 应用程序,其中有一个 WebBrowser 控件。内部网络浏览器中显示的网站来自与应用程序 xap 文件不同的域。如何自动填写内部浏览器中显示的表单?最好直接使用 Silverlight 或 JavaScript。

我试图从 silverlight 应用程序调用外部 JavaScript 代码:

webBrowser.InvokeScript ("eval", "document.getElementById('formField1').value = 'value1';" +
                          "document.getElementById('formField2').value = 'value2';"+
                          "document.forms[0].submit();");

显然,由于安全原因,Silverlight 限制了此功能(我认为是跨站点脚本)。

WebBrowser.InvokeScript

执行在当前加载的 HTML 中定义的指定脚本。

由于我的 JS 代码没有加载到当前显示在 Web 浏览器控件中的 HTML 中,因此我不能使用这种方法。

最明显的解决方案是修改目标网站以包含我的 JS 代码。但我想听听其他一些选择。

4

0 回答 0