我有一个Silverlight Out-of-Browser(OOB)应用程序,里面有一个WebBrowser控件。内部Web浏览器中显示的网站来自与应用程序xap文件不同的域。 如何自动填充内部浏览器中显示的表单?最好直接使用Silverlight或JavaScript。
我尝试从silverlight应用程序调用外部JavaScript代码:
webBrowser.InvokeScript ("eval", "document.getElementById('formField1').value = 'value1';" +
"document.getElementById('formField2').value = 'value2';"+
"document.forms[0].submit();");
显然,由于安全原因,Silverlight限制了此功能(我认为是跨站点脚本)。
执行指定的脚本,该脚本在当前加载的HTML中定义。
由于我的JS代码未加载到当前在Web浏览器控件中显示的HTML中,因此我无法使用此方法。
最明显的解决方案是修改目标网站以包含我的JS代码。但我想听听其他一些选择。