本文目錄一覽:
- 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…
原創文章,作者:RCLX,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/132930.html