2015-09-25 45 views
0

我遇到了以下C#的情况和问题,但并未在网上找到真正的解决方案。C# - 通过JavaScript点击按钮

程序应该点击特定页面上的按钮。它可以以两种不同的方式完成。 此页面包含我想要执行的外部JavaScript。 所以点击按钮不是通过[element] .InvokeMember(“click”) ,而是通过[webBrowser] .InvokeScript([...])执行

但它不起作用。

我无法确定它是否打开另一个窗口(导致浏览器在后台不可见)。

所以:我现在问 - 有没有一种方法来确定这个或我做错了什么D:?

任何帮助表示赞赏。谢谢=)!

我的方法来执行JavaScript(浏览器是一个System.Windows.Controls对象) - 它应该买在steamcommunity市场的项目 - 但事实并非如此:

browser.Navigate([page]); 
browser.InvokeScript("method", new object[] { "'[String]'", "'" + [Integer] + "'", [Integer], "'[Integer]'", "'" + [Integer] + "'" }); 

/

browser.Navigate("http://steamcommunity.com/market/listings/730/PP-Bizon%20%7C%20Sand%20Dashed%20%28Field-Tested%29"); 
browser.LoadCompleted += webBrowser_PageLoaded; 

而且在webBrowser_PageLoaded:

browser.InvokeScript("BuyMarketListing", new object[] { "'listing'", "'" + listingid + "'", 730, "'2'", "'" + assetid + "'" }); 

更新1: http://www.seleniumhq.org/这将打开一个新窗口。这可以在没有打开新的背景下完成吗?和:我没有得到饼干工作=/

更新2: 解决与硒+ PhantomJS窗口问题

现在仍然存在,我无法打开新的输入形式反应问题。 + 问题2:饼干仍然不起作用

+0

请发布您尝试过的代码和按钮代码。也有你试图显示的东西,如果按钮被点击? – deathismyfriend

+0

呵呵?你不能确定是否点击一个按钮打开另一个窗口? –

+0

它@Deathismyfriend =)! – TehRialHolk

回答

0

我不完全确定你正在尝试做什么,但似乎你正在通过模仿按钮点击做一些自动UI测试。有一种称为硒的工具可以进行自动UI测试,并且相对容易处理。

http://www.seleniumhq.org/

+0

这似乎很有趣。感谢您的回答=)! - 我会仔细看看的。 – TehRialHolk

+0

嗯,这会打开一个窗户。这可以在没有打开新的背景下完成吗?而且:我没有让cookies工作= /。 – TehRialHolk