本文目录一览:
- 1、C# webbrowser控件是否能获取JS加载的数据?
- 2、VC++ CWebBrowser2控件 当js错误时 高手请进
- 3、webbrowser 里面的js怎么调用C#
- 4、CWebBrowser2用JS操作HTML代码,该怎么处理
- 5、如何在WebBrowser控件中注入Javascript脚本
- 6、VC6.0下 Activex(Ocx)中使用CWebBrowser2
C# webbrowser控件是否能获取JS加载的数据?
可以的,但这个控件存在内存泄露哦
App.Browser.Navigate("目标地址", UriKind.Absolute));
App.Browser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(Browser_DocumentCompleted);
private void Browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{if (e.Url.AbsoluteUri.ToUpper() == String.Format(UploadConfig.UpLoadUrl, App.CUser.SkyDriveUID).ToUpper())br {br HtmlElement div = App.Browser.Document.All["name"];br App.Browser.DocumentCompleted -= new WebBrowserDocumentCompletedEventHandler(Browser_DocumentCompleted);br}
}
div.InnerHtml可以拿到你想要的
VC++ CWebBrowser2控件 当js错误时 高手请进
一看这个题目就知道很难的一道题在使用Navigate方法的时候加上CWebBrowser2::SetSilent(true);就可以解决问题了。
webbrowser 里面的js怎么调用C#
通过webBrowser实现C#和javascript互调
实现步骤:
一、新建一个窗体,加入webBrowser控件
控件名:webBrowser1
二、在窗体后台代码加入如下定义
[System.Runtime.InteropServices.ComVisibleAttribute(true)]
public partial class Form1 : Form
{
...
}
三、加载网页
webBrowser1.Navigate(Application.StartupPath + "/UpDateReport.htm");
webBrowser1.ObjectForScripting = this; //这句必须,不然js不能调用C#
四、调用脚本方法
/// summary
/// 脚本方法
/// /summary
/// param name="tag"JS函数名|参数1|参数2/param
/// returns/returns
private object EXEC_JS(System.Windows.Forms.WebBrowser webBrowser, string tag)
{
string[] args = tag.Split('|');
if (args.Length == 1)
{
return webBrowser.Document.InvokeScript(args[0], null);
}
else
{
object[] objects = new object[args.Length - 1];
Array.Copy(args, 1, objects, 0, objects.Length);
return webBrowser.Document.InvokeScript(args[0], objects);
}
}
五、C#调用脚本方法例子,可以有返回值
//JS方法
script language="javascript"
function js_fun(args)
{
alert("我是通过js脚本弹出的。你输入的内容是:"+args);
return "JAVASCRIPT";
}
/script
//C#代码
object returnvalue = EXEC_JS(webBrowser1, "js_fun|参数字符串");
MessageBox.Show("js方法返回值是:" + returnvalue.ToString());
六、JS调用C#方法的例子
//C#方法
public string Test(string args)
{
return "你输入的是:"+args;
}
//JS代码
script language="javascript"
window.onload = function()
{
var CS_returnvalue= window.external.Test("aaa");
alert(CS_returnvalue);
}
/script
CWebBrowser2用JS操作HTML代码,该怎么处理
JS输入输出HTML代码有2种方式:
1、在需要输出的的位置写JS代码:scriptdocument.write('需要输出的内容')/script
比如:
ul
scriptdocument.write('lia href="/wap2/newsPage/1320"5/a/lilia href="/wap2/newsPage/1319"4/a/lilia href="/wap2/newsPage/1318"3/a/lilia href="/wap2/newsPage/1317"2/a/lilia href="/wap2/newsPage/1316"1/a/li');
/script
/ul
2、采用js的innerHTML方法:
例子;
ul id="ul"/ul
script
document.getElementById("ul").innerHTML='lia href="/wap2/newsPage/1320"5/a/lilia href="/wap2/newsPage/1319"4/a/lilia href="/wap2/newsPage/1318"3/a/lilia href="/wap2/newsPage/1317"2/a/lilia href="/wap2/newsPage/1316"1/a/li';
/script
如何在WebBrowser控件中注入Javascript脚本
在WebBrowser中注入并执行javascript代码
更多 0
c#WebBrowserWinForm
WebBrowser控件用来显示网页内容,有时候我们需要在网页中执行一段自定义的javascript代码。
如下是实现和注释:
//找到head元素
HtmlElement head = webBrowser1.Document.GetElementsByTagName("head")[0];
//创建script标签
HtmlElement scriptEl = webBrowser1.Document.CreateElement("script");
IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement;
//给script标签加js内容
element.text = "function sayHello() { alert('hello') }";
//将script标签添加到head标签中
head.AppendChild(scriptEl);
//执行js代码
webBrowser1.Document.InvokeScript("sayHello");
VC6.0下 Activex(Ocx)中使用CWebBrowser2
手动注册吧,这个好像是注册命令的路径跟文件存放的路径不同造成的, 用管理员运行CMD,然后输入Regsvr32空格player.ocx的路径 你的应该是Regsvr32 c:program file银货通视频插件\player.ocx 或者把player.ocx复制到C...