c# -通过JavaScript点击按钮
本文关键字:按钮 JavaScript -通过 | 更新日期: 2023-09-27 18:14:44
我在c#中遇到了以下情况和问题,但在网上没有找到真正的解决方案。
程序应该点击特定页面上的按钮。有两种不同的方法。这个页面包含我想要执行的外部javascript。所以点击按钮不是通过[element].InvokeMember("click")而是通过[webBrowser].InvokeScript([…])执行
但是它不工作。
我无法确定它是否打开了另一个窗口(因为浏览器在后台是不可见的)。
所以:我现在问-是否有一种方法来确定这一点,或者我做错了什么D:?
任何帮助都是感激的。谢谢!
我执行javascript的方法(浏览器是一个System.Windows.Controls对象)-它应该在steam社区市场上购买一个项目-但它没有:
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;
And in webBrowser_PageLoaded:
browser.InvokeScript("BuyMarketListing", new object[] { "'listing'", "'" + listingid + "'", 730, "'2'", "'" + assetid + "'" });
更新1:http://www.seleniumhq.org/这会打开一个新窗口。这可以在后台完成,而不需要打开一个新的吗?And: I don't get cookie working =/
更新2:使用Selenium+PhantomJS解决窗口问题
现在仍然存在我无法对打开的新输入表单做出反应的问题。+问题2:cookie仍然不能工作
我不完全确定你在做什么,但似乎你正在通过模仿按钮点击做一些自动UI测试。有一个叫做selenium的工具可以自动进行UI测试,使用起来相对容易。
http://www.seleniumhq.org/