sách gpt4 ăn đã đi

c# - 单击 WebBrowser 控件内的 HTML 链接

In lại 作者:太空狗 更新时间:2023-10-29 20:52:12 25 4
mua khóa gpt4 giày nike

C# Visual Studio 2010

我正在将一个复杂的 html 页面加载到网络浏览器控件中。但是,我没有能力修改网页。我想从 Windows 窗体自动单击页面上的链接。但是,ID 似乎是每次加载页面时随机生成的(所以我相信引用 ID 是行不通的)。

这是 href 链接的内容:


id="u_lp_id_58547"
href="javascript:void(0)"
class="SGLeftPanelText"onclick="setStoreParams('cases;212', 212); window.leftpanel.onClick('cases_ss_733');return false; ">

My Assigned

是否要从 C# 中单击链接?

Cảm ơn!


更新:

我觉得这很接近,但它不起作用:

HtmlElementCollection links = helpdeskWebBrowser.Document.Window.Frames["main_pending_events_frame"].Document.GetElementsByTagName("a");
MessageBox.Show(links.Count.ToString());

我已经尝试插入每个单独的框架名称并在 TagName 字段中尝试了“a”和“A”,但没有任何运气。我找不到任何链接;消息框始终为 0。我错过了什么?

câu trả lời hay nhất

像这样的东西应该可以工作:

HtmlElement link = webBrowser.Document.GetElementByID("u_lp_id_58547")
link.InvokeMember("Click")

biên tập:

由于 ID 是随机生成的,另一种选择可能是通过它们的 InnerText 来识别链接;沿着这些路线。

HtmlElementCollection links = webBrowser.Document.GetElementsByTagName("A");

foreach (HtmlElement link in links)
{
if (link.InnerText.Equals("My Assigned"))
link.InvokeMember("Click");
}

更新:

您可以使用以下方法获取 IFrame 中的链接:

webBrowser.Document.Window.Frames["MyIFrame"].Document.GetElementsByTagName("A");

关于c# - 单击 WebBrowser 控件内的 HTML 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3479490/

25 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress